![]() |
|
#1
|
||||
|
||||
|
I'm always on the lookout for new programming languages.
Google is developing a new systems language called Go that looks interesting. Two features that make it particularly interesting are garbage collection and the ability to program for multiple core computers. It may be another flash in the pan or since Google is behind it, it may develop into an alternative to c++ and java. fos |
|
#2
|
|||
|
|||
|
Quote:
Quote:
__________________
Blog: http://blog.danieldk.org/ |
|
#3
|
||||
|
||||
|
An article on C++ and Java commented that they have become too bloated. Programmers spend too much time satisfying the compiler. Their "industrial" nature takes away creativity.
Go is based on C for a front end and back end. So in essence, it still boils down to C. For me, C is hard to beat. C, html, and php are all I'm likely to ever put to functional use. (I think I'm too old to fully embrace object oriented programming.) fos The perpetual amateur hobbyist... |
|
#4
|
|||
|
|||
|
Quote:
Quote:
If you want to see innovation, go to functional languages, such as Haskell. They are fun and truely innovative .
__________________
Blog: http://blog.danieldk.org/ |
|
#5
|
||||
|
||||
|
My point was that it still boils down to C. This language and many other ultimately manipulate C constructs. The fact that C is just about as close to the hardware as you can get short of assembly just about makes it the default language. You can make a fancy knife a simple will cut just as well.
|
|
#6
|
|||
|
|||
|
That's the same as stating that every language eventually boils down to assembly. Which is of course, not true. A language can eventually be compiled to C, assembly, LLVM bytecode, or even brainfuck, but that does not preserve the semantics of the language. What makes languages unique are grammar and semantics, for which you need a compiler or interpreter unique to the language. The concept of, say, a C++ template or a Java interface is meaningless in C or assembly.
__________________
Blog: http://blog.danieldk.org/ |
|
#7
|
||||
|
||||
|
You can do anything with any language. C is small and concise. You can do just about anything with C. Because of this and because an excellent cross platform implementation is freely available, many languages use it as their foundation.
C++ and Java, the "industrial" languages, are bloated. A programmer must spend a lot of time satisfying the compiler. I guess that is a good thing in an industrial environment. The future of programming must address multi-core programming. Just about every new computer has multiple cores. That trend is the new upgrade. It used to be speed and memory. To utilize all of the cores, programming languages are going to have help mere mortals. That is one of Go's core goals. After looking at Haskell, I would have to agree, it is twenty years along in its development and may serve that purpose admirably. I downloaded the GHC Haskell Platform. I going to go through O'Reilly's online version of Haskell programming. I can do that since for me it is a hobby. Industrial programmers are frequently compelled to use a language due to legacy constraints. Java worked its way into the mainstream, maybe Haskell or something else can do the same. |
|
#8
|
|||||||
|
|||||||
|
Quote:
.Quote:
Quote:
Quote:
Quote:
Quote:
[qoute]After looking at Haskell, I would have to agree, it is twenty years along in its development and may serve that purpose admirably. I downloaded the GHC Haskell Platform. I going to go through O'Reilly's online version of Haskell programming.[/quote] The first few chapters of the Real World Haskell book are really great. Afterwards, things disintegrate a bit. But it is a good start. I also heard that 'Learn you a Haskell' is ok for newcomers. Quote:
. So, as a hobby, you can't find a better match.Maybe we can set up a reading group? I am still looking for buddies to work through the chapters .
__________________
Blog: http://blog.danieldk.org/ |
|
#9
|
||||
|
||||
|
A reading group sounds like a very good idea.
I'll set it up. Jeff |
![]() |
| Thread Tools | |
| Display Modes | |
|
|