digitalmars.D - Re: Go: A new system programing language
- HOSOKAWA Kenchi <hskwk inter7.jp> Nov 12 2009
- Daniel de Kok <me nowhere.nospam> Nov 14 2009
- grauzone <none example.net> Nov 14 2009
- Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> Nov 14 2009
- grauzone <none example.net> Nov 14 2009
- Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> Nov 14 2009
- Justin Johansson <no spam.com> Nov 15 2009
- Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> Nov 15 2009
- Daniel de Kok <me nowhere.nospam> Nov 14 2009
- Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> Nov 14 2009
- Daniel de Kok <me nowhere.nospam> Nov 14 2009
- grauzone <none example.net> Nov 14 2009
- Bill Baxter <wbaxter gmail.com> Nov 15 2009
Walter Bright Wrote:Bill Baxter wrote:It's harder to find those when you're skimming through trying to get the highlights with a 5 minute limit. :-) What are some things is it missing?
Off the top of my head, some major ones: . exception handling . generic programming . metaprogramming . inline assembler . interface to C . RAII . immutability for anything but strings . vector operations . operator overloading . purity . CTFE . unit testing . documentation generation . ability to write systems code like implement a GC . conditional compilation . contracts . 80 bit floating point . introspection (runtime or compile time) . delegates . reference parameters Not sure if it has closures or not. And of course a lot of minor ones, . no _ in integer literals . no nesting comments . no entities etc.
These features give great power for numeric uses. Probably Go's developers would have never imagined to do numerical operations with their language. Only middlewares are in their sights. I'm impressed by Go's selector expressions and anonymous fields. They are what D's overload sets and opDot/alias this aimed to. But I love implicit casts with alias this at the same time. I withhold to say which is better, Go's interfaced pointers or D's value-struct/reference-class. On this point, both Go and D would have pros and cons. p.s. If both D and Go come to be major language, There will be many disputes like fray between users of Python / Ruby / Perl.
Nov 12 2009
On 2009-11-12 22:50:20 +0100, HOSOKAWA Kenchi <hskwk inter7.jp> said:These features give great power for numeric uses. Probably Go's developers would have never imagined to do numerical operations with their language. Only middlewares are in their sights.
I am a bit surprised that they'd still prefer Java Complex-like ugliness rather than supporting operator overloading or an infix function or method notation. Go is clearly coming from a C/Java background, making it refreshingly uncomplex, but life's hard for number crunching or building performant containers. But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts... Take care, Daniel
Nov 14 2009
Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Nov 14 2009
grauzone wrote:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Yeah, but that's something that can be fixed. What is more difficult to fix is that Go is all-over an unremarkable and unoriginal language (something that would become obvious if one thinks for a second what would have happened if Go wasn't associated with Google's brand name). On the other hand, it is associated with Google's brand name. :o) It will be interesting to see how things turn out. Andrei
Nov 14 2009
Andrei Alexandrescu wrote:grauzone wrote:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Yeah, but that's something that can be fixed. What is more difficult to
Don't underestimate the negative effects of a bad toolchain. D has the same problem, but (apparently) not as bad.fix is that Go is all-over an unremarkable and unoriginal language (something that would become obvious if one thinks for a second what would have happened if Go wasn't associated with Google's brand name). On the other hand, it is associated with Google's brand name. :o) It will be interesting to see how things turn out.
I agree, the brand name is probably the best what Go got. (But it's not that Go doesn't contain some good ideas.)Andrei
Nov 14 2009
grauzone wrote:Andrei Alexandrescu wrote:grauzone wrote:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Yeah, but that's something that can be fixed. What is more difficult to
Don't underestimate the negative effects of a bad toolchain. D has the same problem, but (apparently) not as bad.fix is that Go is all-over an unremarkable and unoriginal language (something that would become obvious if one thinks for a second what would have happened if Go wasn't associated with Google's brand name). On the other hand, it is associated with Google's brand name. :o) It will be interesting to see how things turn out.
I agree, the brand name is probably the best what Go got. (But it's not that Go doesn't contain some good ideas.)
Well I'm not sure. I haven't seen anything original in Go, just regurgitations of prior approaches. Of course, there may be value in finding the right mix of herbs, but right now the soup is rather long*. Andrei * "long soup" = Romanian phrase for a soup rich in water but lacking in all other ingredients.
Nov 14 2009
Bill Baxter Wrote:On Sat, Nov 14, 2009 at 7:19 PM, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> wrote:* "long soup" = Romanian phrase for a soup rich in water but lacking in all other ingredients.
A.k.a. "thin soup" in English. :-) --bb
Also known as "all sizzle and no sausage" (Australian BBQ).
Nov 15 2009
Bill Baxter wrote:On Sat, Nov 14, 2009 at 7:19 PM, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> wrote:* "long soup" = Romanian phrase for a soup rich in water but lacking in all other ingredients.
A.k.a. "thin soup" in English. :-)
Thank you! This kind of stuff is difficult to find with a dictionary. Andrei
Nov 15 2009
On 2009-11-14 16:19:00 +0100, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> said:grauzone wrote:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Yeah, but that's something that can be fixed. What is more difficult to fix is that Go is all-over an unremarkable and unoriginal language (something that would become obvious if one thinks for a second what would have happened if Go wasn't associated with Google's brand name). On the other hand, it is associated with Google's brand name. :o) It will be interesting to see how things turn out.
Unremarkable, but to be fair it will appeal to a large number of people who want a more modern C without the complexity of C++ (or D). It resembles the approach of Objective-C quite much, but I think Google is better able to push it beyond their own products. That is if Google is actually interested in Go, other than it being a 20% project. -- Daniel
Nov 14 2009
Leandro Lucarella wrote:Andrei Alexandrescu, el 14 de noviembre a las 09:19 me escribiste:grauzone wrote:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
no Windows compiler, which is an _absolute_ show stopper.
to fix is that Go is all-over an unremarkable and unoriginal language (something that would become obvious if one thinks for a second what would have happened if Go wasn't associated with Google's brand name). On the other hand, it is associated with Google's brand name. :o) It will be interesting to see how things turn out.
Don't forget it's designed by Rob Pike and Ken Thompson. That's *not* irrelevant, it's not just a Google language.
I have a huge amount of respect for both, but I think Rob Pike is not quite a language designer. Ken Thompson is a brilliant designer, but I don't know what recent work he has done in language design prior to Go. Honest, I'd be much more worried about Go if Craig Chambers were involved. Andrei
Nov 14 2009
On 2009-11-14 13:35:08 +0100, grauzone <none example.net> said:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Sorry, D2 with Phobos is absolutely the only option for me. I use STL in C++ all the time, and I want something nearly equivalent. Of course, there are older gdc versions that work with D2, but it seems kind of pointless to go so far back in time considering the recent great work... -- Daniel
Nov 14 2009
Daniel de Kok wrote:On 2009-11-14 13:35:08 +0100, grauzone <none example.net> said:Daniel de Kok wrote:But hey, there is a compiler for 64-bit binaries :). Of course, I should swallow that, and help with the LDC efforts...
As far as I know, ldc+Tango already works on 64 bit. Also, Go has no Windows compiler, which is an _absolute_ show stopper.
Sorry, D2 with Phobos is absolutely the only option for me. I use STL in C++ all the time, and I want something nearly equivalent.
If there's one thing I don't miss from C++, then it's the STL.Of course, there are older gdc versions that work with D2, but it seems kind of pointless to go so far back in time considering the recent great work... -- Daniel
Nov 14 2009
On Sat, Nov 14, 2009 at 7:19 PM, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> wrote:* "long soup" = Romanian phrase for a soup rich in water but lacking in all other ingredients.
A.k.a. "thin soup" in English. :-) --bb
Nov 15 2009