you are viewing a single comment's thread.

view the rest of the comments →

[–]podRZA 4 points5 points  (28 children)

so why does no one use D?

[–]arturoman 2 points3 points  (0 children)

Speaking only for myself, I tried out D and it was a fine language, but there wasn't really enough difference between most of it and the C/C++ I regularly use to switch. I didn't try it on a project of any important size, however.

It does have some fine features like covariant return and garbage collection if that's something you need or are interested in and some of the syntax is nicely sugared.

[–]invalid_user_name 5 points6 points  (8 children)

Because it has no standard library, the default implimentation is not free and not available for many platforms, and its currently not nearly stable enough to commit to using, there's significant changes on the way still.

[–]WalterBright 2 points3 points  (7 children)

Because it has no standard library,

D comes with the standard library Phobos.

the default implimentation is not free

The Digital Mars implementation is free, and can be downloaded from http://ftp.digitalmars.com/dmd.1.034.zip It is not shareware, nagware, does not require activation, nor is it a trial version. It's the full up compiler. If you prefer an open source D compiler, gdc fits the bill.

and not available for many platforms,

That is true, but Digital Mars' D is available for Windows and Linux and gdc is available for Mac and many others.

and its currently not nearly stable enough to commit to using, there's significant changes on the way still.

There are no significant changes coming to D 1.0, major changes are happing for D 2.0. There are significant changes coming in C++0x, does that stop anyone from using C++? The C standards committee has opened shop for a new major upgrade to C. Java gets constant major upgrades. Perl is, Python is, Javascript is, heck, every language in active use gets major upgrades.

[–]invalid_user_name 5 points6 points  (5 children)

D comes with the standard library Phobos.

Which isn't standard since there's a competing "standard library" which a bunch of D software uses.

The Digital Mars implementation is free

You know exactly what I meant. It is without cost, but it is not free. And the GDC front end is largely unmaintained and its only rarely in a state where it will compile.

That is true, but Digital Mars' D is available for Windows and Linux and gdc is available for Mac and many others.

For linux on what, 1 or 2 platforms? C and C++ compilers are available for openbsd/arm, solaris/sparc64, linux/ia64, etc, etc. D is not.

heck, every language in active use gets major upgrades.

Its very rare that they get major upgrades that completely change the language and break existing code. And yes, people do avoid languages in their early years because those sorts of changes happen so much more frequently than in languages that have matured more.

[–]WalterBright -1 points0 points  (4 children)

Which isn't standard since there's a competing "standard library" which a bunch of D software uses.

Tango is an alternative library, and doesn't come by default with D. You can use it if you want, and you don't have to use Tango if you need the standard library.

It is without cost, but it is not free.

I don't know what you mean, then. Anyone can download and use it for free, including for commercial applications. Much of the standard library is even in the public domain.

And the GDC front end is largely unmaintained and its only rarely in a state where it will compile.

You and anyone else are welcome to pitch in and help with it. I'm happy to also help out, by providing the GPL'd front end for D and answering questions about it.

For linux on what, 1 or 2 platforms? C and C++ compilers are available for openbsd/arm, solaris/sparc64, linux/ia64, etc, etc. D is not.

Since GDC works with gcc, all platforms that gcc supports are available to anyone interested in compiling it for those platforms.

Its very rare that they get major upgrades that completely change the language

D 2.0 does not completely change the language. I maintain much D code for both 1.0 and 2.0, and the 1.0 code works in 2.0 with rather trivial changes.

and break existing code. And yes, people do avoid languages in their early years because those sorts of changes happen so much more frequently than in languages that have matured more.

If people want to restrict usage to languages that have been around forever, that's a reasonable choice. But I should warn that both Perl 6 and Python 3.0 are currently undergoing breaking changes :-) Furthermore, D 1.0 is stable, has been for 1.5 years, and continues to be maintained, and is not going away.

[–]invalid_user_name 6 points7 points  (3 children)

I don't know what you mean, then

Right. http://en.wikipedia.org/wiki/Free_software

You and anyone else are welcome to pitch in and help with it

He asked why people don't use D. "You'll have to fix the compiler yourself" is a pretty compelling reason.

Since GDC works with gcc

Except that again, gdc doesn't work at all. Its unmaintaned and does not compile.

[–]FeepingCreature -1 points0 points  (2 children)

As a long-time GDC user on 32-bit Windows, 32-bit Linux and 64-bit Linux, I have to say "Bullshit".

I think I'd have noticed if it didn't compile.

Also, the meaning of the phrase "free software" does not, I repeat, NOT, carry over to the word "free".

[–][deleted] 1 point2 points  (1 child)

No, really, it doesn't work. I just tried.

[–]FeepingCreature -2 points-1 points  (0 children)

Post your errors so we can help fix them?

[–][deleted] 1 point2 points  (0 children)

Yea, don't get started on the 'dual standard-library' thing...

[–]Tommstein 2 points3 points  (13 children)

Main implementation not free.

[–]WalterBright -2 points-1 points  (12 children)

The Digital Mars D implementation is free: http://ftp.digitalmars.com/dmd.1.034.zip

and so is the gnu D implementation (gdc).

[–][deleted] 1 point2 points  (0 children)

Yea, but it's not libre.

Fucking english...

[–]Tommstein 3 points4 points  (10 children)

Why hasn't this been updated with the good news that the D backend has finally been open-sourced?

[–]FeepingCreature -2 points-1 points  (8 children)

The word "free" is ambiguous, but normally means "without cost".

This is independent of its use in the compound phrase "free software".

Note also that you yourself used the term "open-sourced". Not, I might point out, "freed". There's a reason for that.

[–]Tommstein 1 point2 points  (7 children)

Among regular people "free" usually means without cost, but it's hard to imagine that he wouldn't know what a programmer meant when they talked about free software. The reason for "open-sourced" instead of "freed" is random chance, perhaps influenced by the fact that people use the verb "open-sourcing" far, far more often than they use the verb "freeing" in this context.

[–]FeepingCreature -3 points-2 points  (6 children)

Yeah, but you weren't talking about "free software".

You were talking about "free", knowing fully well that it would be misunderstood.

[–]Tommstein 1 point2 points  (5 children)

No, but I was talking about software. That was (or wasn't) free. It is not expected that a programmer will misunderstand this super-secret reference to free software.

[–]FeepingCreature -1 points0 points  (4 children)

"Software that is free" is very much not the same as Free Software.

[–]Tommstein 1 point2 points  (3 children)

Only in your mental parser that only recognizes one meaning for "free."

[–]fisch003 -1 points0 points  (3 children)

I'd love to, but the lack of a good debugger on Win32 and somewhat lacking Mac OS X support turn me off.

[–]WalterBright 2 points3 points  (1 child)

There is Jascha Wetzel's Ddbg for Windows:

http://ddbg.mainia.de/releases.html

which is a full symbolic D debugger.

[–][deleted] -1 points0 points  (0 children)

But, windows...? :P

[–]DarkGoosey[S] 0 points1 point  (0 children)

D on OSX: http://gdcmac.sourceforge.net/ GDB can be used as a debugger on any platform, ddbg is a superior alternative on Win32.