At a crossroad
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Mon Jun 29 11:57:12 PDT 2009
superdude wrote:
> As someone who is reading this newsgroup instead of watching a soap
> opera, I will give you my useless reasons why I have given up on D,
> completely:
Since your reasons were useful to one person at least, they aren't
useless. To be completely honest, however, they are all technically
inaccurate. In that way, I'm afraid I can't say I am sorry the community
is losing your membership. We need an increase in the quality of
participation to this newsgroup.
> Lost focus:
> D was intended as a system programming language, at some point the
> direction changed to a pure functional research toy. No longer
> intresting for me.
D has been, is, and will be a systems programming language. The fact
that it has the keyword "pure" doesn't make it a pure functional
research toy. It has acquired functional capabilities for a variety of
good reasons. But its system-level abilities have been also improved
considerably, and the way they are all integrated is rather remarkable.
> D2 Vapoware:
> Using pure, side effect free, shared nothing, transitiv, functional
> programming D2 will automatically distribute your program on multiple
> cores and your programm will run - magically - number of cores times -
> faster.
Such was not claimed. It is, however, well known that read-only sharing
across threads is very safe and fast. It does deserve its place in any
language that's serious about concurrency.
> If not, at least D2 will make it possible to write multithreaded
> programs, easily. Besides this it is still an ideal system programming
> language. You can use it to build the next operating system. *Show me
> the results, YESTERDAY!* Unfortunately it will not be compatible with
> D1, so prepare yourself to rewrite your programs.
How large is your D1 codebase, and how large a part of it is concurrent?
> Conservative Garbage Collection:
> Some of my programs build structures requirering more than 1.5GByte of
> memory. Conservative Garbage Collections, simply does not work for 32bit
> programs. Try it for yourself.
I have hit the same issues in my own code, and it is a hindrance. But
it's not a showstopper. I did write programs that consume as much memory
as the machine has. It takes extra care, but then writing such a program
requires care in any language. This is the only reasonable technical
point you are making.
> Library Split:
> "I'm not interested in Tango and in no way I'm going to support it!
> Phobos is the standard library. Period." - I was looking for such a
> sentence. Or "Ok, Tango is great. It will replace Phobos. Phobos will
> only stay for backwards combatibility."
Neither sentence is the right one. The right sentence is "Phobos is the
standard library and Tango will work with it as well as any other
library." There's no "Tango vs. Phobos". You will be able to use either
or both in your code, just like you can use C++'s standard library and
Berkeley sockets or Qt strings.
> I recognized I'm looking for something different:
> I recognized what I actually want is not D. It is a python or ruby -
> with the speed of C. I'm aware it does not exist, yet. But actually it
> is a lot easier and more fun to use Python and write some performance
> critical stuff in C or C++ than to use D. All this template stuff... For
> what? Give me a high dynamic language, please.
At this point you are contradicting your earlier point that D is no
longer interesting to you because it is not a systems programming
language anymore. A highly dynamic language is not a systems programming
language.
> D offers too less compared to C++, C# or Java. And D is usually slower
> than C++ or Java...
"Too less"? I'm starting to have an idea on who superdude is :o).
I believe D's offering as a language is already vastly superior to
others', but such advantages are hard to see when there's little
infrastructure using them. We're working on that.
> Zealots trolling in the news:
> Sometimes very offending discussions in the forum. Some people show very
> litle tollerance to different opinions. No one steps in and says: "Stop
> it, now! It's enough! This is not a forum about XXXXX. It's about the D
> programming language!".
>
> As long as superdan is licking his balls and fucking his mother. -
> Nothing will change. There will be at least two standard libraries. Who
> gives a fucking shit! There will never be a a high concurrent D2 - It's
> the halting problem, you sucker! - only transtitiv const. There will
> always be funny discussion to read in the forum, etc.
I think the tone of discussions has improved enormously since a couple
of years ago. Back then flamewars were the norm, interrupted by short
periods of relative peace. But one thing I'd really want is to improve
the technical level of the posts; many posts are technically not up to
snuff. I'm as annoyed by superdan's language as anyone else, but I have
to say that most of the time he has his facts right, unlike, for
example, your post.
Andrei
More information about the Digitalmars-d
mailing list