November 11, 2009
Bill Baxter wrote:
> Not sure what I think about that.  Can you even have a "systems"
> language that doesn't allow pointer manipulation?

If you cannot implement a GC in a language, then it ain't a systems language. I'm pretty sure that's a necessary criteria, less sure it is a sufficient one.


> But that's a good list.  In the video he makes it sound like generics
> will probably happen eventually, they're just not sure how best to do
> it yet.   Lack of operator overloading is annoying.  I guess that's
> not unexpected given that their mission was to write a good language
> for writing servers.  But if they don't do something about it (among
> other things) they'll miss out on the game and numerics audience.

I was talking to David Held (if you haven't met him yet, you should at the next NWCPP meeting!). He has a lot of corporate experience with Java. Something he said piqued my interest when we were talking about IDEs. He said that IDEs for Java were necessary, and one reason why was because with "one click" the IDE will automatically generate hundreds of lines of boilerplate.

It seems that the Java IDE is serving the need that other languages have macros, templates, metaprogramming and other generative programming features for. If D needed an IDE to generate such boilerplate, I'd consider D to have a severe lack of expressive power.

Go doesn't seem to have any generative abilities.
November 11, 2009
Bill Baxter wrote:
> On Wed, Nov 11, 2009 at 11:25 AM, Bill Baxter <wbaxter@gmail.com> wrote:
>> But that's a good list.  In the video he makes it sound like generics
>> will probably happen eventually, they're just not sure how best to do
>> it yet.
> 
> Just noticed, The Language FAQ[1] says the same thing about
> exceptions.  They're interested, just not sure how to do it.
> 
> [1] http://golang.org/doc/go_lang_faq.html#exceptions


Exceptions are a fair amount of work to implement. I wouldn't expect it soon.
November 11, 2009
"Anders F Björklund" <afb@algonet.se> wrote in message news:hde8r9$1347$1@digitalmars.com...
> Nick Sabalausky wrote:
>
>>> I meant the 1.0 release, in case that wasn't obvious ?
>>> The D project was started ten years ago (1999), I think.
>>
>> Ah. Since 1.0 was just an arbitrary stake-in-the-ground some time after D was already perfectly usable,so I've never thought of 1.0's release as being anything special.
>
> Sure, I think the "official" web site http://d-programming-language.org/ and the 1.0 release that followed was mostly to generate some interest ?
>
> I guess the next line-in-the-sand will be the book release, and whatever version of DMD 2.x (compiler and specification) that will come with it ?
>

Perhaps, but this time around there seems to be a major effort to get as many details as possible worked out before drawing that line. (Yay! :) )


November 11, 2009
Bill Baxter wrote:
> On Wed, Nov 11, 2009 at 11:25 AM, Bill Baxter <wbaxter@gmail.com> wrote:
>> But that's a good list.  In the video he makes it sound like generics
>> will probably happen eventually, they're just not sure how best to do
>> it yet.
> 
> Just noticed, The Language FAQ[1] says the same thing about
> exceptions.  They're interested, just not sure how to do it.
> 
> [1] http://golang.org/doc/go_lang_faq.html#exceptions

So they are roughly where D was eleven years ago.

One thing I dislike about Go is the incult attitude it fosters. Apparently its creators weren't aware about the existence of D, which is quite difficult in this day and age (D is the *second* result when searching for system programming language with Google after the obligatory Wikipedia entry, so it takes a lot of effort to dismiss it as not being "major" and essentially pretend it doesn't exist). The authors failed to even exercise due diligence - there's a language called Go! that has even a book written about (the news is all over http://www.reddit.com/r/programming/).

Also, the language does not make use of many advances that PL technology has made in the recent years. These things combined are quite indicative of an attitude towards language design that I highly disapprove of.

Funny detail - one goal is to avoid "stuttering" (one of the first examples in the video). Yet "Hello, World" defines package main and function main in the main file, and imports fmt "fmt".



Andrei
November 11, 2009
On 2009-11-11 14:02:17 -0500, Andrei Alexandrescu <SeeWebsiteForEmail@erdani.org> said:

>> It's definitely going to be a strong competitor for D's audience.
> 
> Possibly, but IMHO not on technical merit at all. It is many years behind becoming usable for a real system. It will be interesting how it plays out.

At least Go programs run on my computer. I can't say the same about D2 (OS X 10.6 here).

-- 
Michel Fortin
michel.fortin@michelf.com
http://michelf.com/

November 11, 2009
On 2009-11-11 10:57:20 -0500, "Robert Jacques" <sandford@jhu.edu> said:

>   * Uses '+' for concatenation

That's what I dislike the most about it. I quite like the syntax and I quite like the concept of interfaces as a replacement for traditional OOP.

-- 
Michel Fortin
michel.fortin@michelf.com
http://michelf.com/

November 11, 2009
On Wed, Nov 11, 2009 at 2:00 PM, Michel Fortin <michel.fortin@michelf.com> wrote:
> On 2009-11-11 14:02:17 -0500, Andrei Alexandrescu <SeeWebsiteForEmail@erdani.org> said:
>
>>> It's definitely going to be a strong competitor for D's audience.
>>
>> Possibly, but IMHO not on technical merit at all. It is many years behind becoming usable for a real system. It will be interesting how it plays out.
>
> At least Go programs run on my computer. I can't say the same about D2 (OS X
> 10.6 here).

They don't run on mine or 95% of the other PCs out in the world  (Windows here).

--bb
November 11, 2009
Walter Bright wrote:
> He said that IDEs for Java were necessary, and one reason why was because with "one click" the IDE will automatically generate hundreds of lines of boilerplate.

That's the best short argument against Java I've heard so far.

- --
My enormous talent is exceeded only by my outrageous laziness.
http://www.ssTk.co.uk
November 11, 2009
On Wed, Nov 11, 2009 at 1:34 PM, Andrei Alexandrescu <SeeWebsiteForEmail@erdani.org> wrote:
> Bill Baxter wrote:
>>
>> On Wed, Nov 11, 2009 at 11:25 AM, Bill Baxter <wbaxter@gmail.com> wrote:
>>>
>>> But that's a good list.  In the video he makes it sound like generics will probably happen eventually, they're just not sure how best to do it yet.
>>
>> Just noticed, The Language FAQ[1] says the same thing about exceptions.  They're interested, just not sure how to do it.
>>
>> [1] http://golang.org/doc/go_lang_faq.html#exceptions
>
> So they are roughly where D was eleven years ago.

Yeh.  :-)   But unlike D 11 years ago, they have 5 guys and a budget to hire interns.  And the ability to hire more full-timers if it catches on.

> One thing I dislike about Go is the incult attitude it fosters. Apparently its creators weren't aware about the existence of D, which is quite difficult in this day and age (D is the *second* result when searching for system programming language with Google after the obligatory Wikipedia entry, so it takes a lot of effort to dismiss it as not being "major" and essentially pretend it doesn't exist).

I think Walter even gave a talk at Google, once.  Didn't he?

> The authors failed to even exercise
> due diligence - there's a language called Go! that has even a book written
> about (the news is all over http://www.reddit.com/r/programming/).

Yeh, but you have to admit it *is* a good name for their language, with Ogle for the debugger.  And "Go!" != "Go".  And it's hard to trademark a common word.  And Google doesn't really believe in IP anyway.  And they can probably buy the name from the guy if it comes to that anyway.  So while I'm sure it sucks for the Go! guy, at least he's getting some publicity for his language out of it now.

> Also, the language does not make use of many advances that PL technology has made in the recent years. These things combined are quite indicative of an attitude towards language design that I highly disapprove of.

I have to admit I was surprised that they don't have any kind of story about compile-time code generation.  The website doesn't even mention it anywhere as far as I can see.  They talk about generics in the FAQ as if that's some kind of pinnacle of PL design rather than a compromise settled on by languages that can't manage full compile-time capabilities.

> Funny detail - one goal is to avoid "stuttering" (one of the first examples in the video). Yet "Hello, World" defines package main and function main in the main file, and imports fmt "fmt".

I think  import fmt "fmt"  is a renamed import.  So it could have been just import "fmt" or  import foo "fmt".   And he mutters something about the "package main" maybe going away.  But yeh, funny.

--bb
November 11, 2009
BLS wrote:
> On 11/11/2009 18:35, 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?   (Also recall that D lacked even templates until long after
>> its inception -- so if the language can muster some level of
>> acceptance, probably popular demand will eventually lead to adding
>> more of those missing features.)
> 
> No OOP,
> a NoGo language for me.
> 

Yes OOP; just not in the traditional Java/C# style.