View mode: basic / threaded / horizontal-split · Log in · Help
July 23, 2009
Re: Reddit: why aren't people using D?
Jarrett Billingsley wrote:
> On Wed, Jul 22, 2009 at 10:00 PM, Andrei
> Alexandrescu<SeeWebsiteForEmail@erdani.org> wrote:
>> Or like driving an American car vs. a Japanese or European car.
>>
> 
> Yeah, what *is* the deal with that?  In terms of little convenience
> features, American cars feel outright primitive compared to Japanese
> and European cars..
> 
> Sorry for the OT :P

Would you believe there is a guy in this newsgroup who'd manage to keep 
a straight face while saying that Ford is better designed than Mercedes?

Andrei
July 23, 2009
Re: Reddit: why aren't people using D?
Jesse Phillips wrote:
> On Wed, 22 Jul 2009 18:27:50 -0500, Andrei Alexandrescu wrote:
> 
>> Walter Bright wrote:
>>> http://www.reddit.com/r/programming/comments/93jh5/
> ask_proggit_the_d_programming_language_looks/
>> I noticed some people complain about installation difficulties, is there
>> progress on the community project for writing installer for the three
>> major OSs?
>>
>> Andrei
> 
> I'm intending a rework of:
> 
> http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial/InstallingDCompiler
> 
> but haven't got around to it and can only cover Linux and Windows.
> 
> The end result will be at:
> 
> http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial/StartingWithD/Compiler/
> DMD

Thanks, we need more of that stuff. I think this is a common experience 
(pasted from the reddit discussion):

==========
i couldn't manage to get the command line toolchain up and running in 
linux either. yes, part of it was me being lazy, but there really is no 
good documentation saying "this is where your D installation needs to 
go, these are the environment variables you need, this is how to write a 
makefile or equivalent, this is the filesystem layout the build tool 
expects, this is how to use a c library, etc".
==========

A while ago Walter put a good amount of work into accelerating code 
generation by avoiding writing object files to disk. He mentioned that 
that's a nice feature that old and new users will notice. I agree with 
that, but I also think installation has a huge importance. Having 
streamlined code generation but a crappy installer is like showing up at 
a first date pocketing a condom, but wearing an MSDN conference T-shirt.


Andrei
July 23, 2009
Re: Reddit: why aren't people using D?
On Wed, 22 Jul 2009 22:19:29 -0500, Andrei Alexandrescu wrote:

> Jesse Phillips wrote:
>> On Wed, 22 Jul 2009 18:27:50 -0500, Andrei Alexandrescu wrote:
>> 
>>> Walter Bright wrote:
>>>> http://www.reddit.com/r/programming/comments/93jh5/
>> ask_proggit_the_d_programming_language_looks/
>>> I noticed some people complain about installation difficulties, is
>>> there progress on the community project for writing installer for the
>>> three major OSs?
>>>
>>> Andrei
>> 
>> I'm intending a rework of:
>> 
>> http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial/InstallingDCompiler
>> 
>> but haven't got around to it and can only cover Linux and Windows.
>> 
>> The end result will be at:
>> 
>> http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial/StartingWithD/
Compiler/
>> DMD
> 
> Thanks, we need more of that stuff. I think this is a common experience
> (pasted from the reddit discussion):
> 
> ==========
> i couldn't manage to get the command line toolchain up and running in
> linux either. yes, part of it was me being lazy, but there really is no
> good documentation saying "this is where your D installation needs to
> go, these are the environment variables you need, this is how to write a
> makefile or equivalent, this is the filesystem layout the build tool
> expects, this is how to use a c library, etc". ==========
> 
> A while ago Walter put a good amount of work into accelerating code
> generation by avoiding writing object files to disk. He mentioned that
> that's a nice feature that old and new users will notice. I agree with
> that, but I also think installation has a huge importance. Having
> streamlined code generation but a crappy installer is like showing up at
> a first date pocketing a condom, but wearing an MSDN conference T-shirt.
> 
> 
> Andrei

Oh, I know, I posted this response:

http://www.reddit.com/r/programming/comments/93jh5/
ask_proggit_the_d_programming_language_looks/c0bbbs5

As for the needing more of it, we actually have too much.

http://www.prowiki.org/wiki4d/wiki.cgi?EvaluationGuide
http://www.prowiki.org/wiki4d/wiki.cgi?HowToGentoo
http://www.prowiki.org/wiki4d/wiki.cgi?HowToUbuntu

The trend seems to be, make your own, reference the old, and have 
everything outdated and complicated. There is a lot of good information, 
but it has to be presented properly with a concentrated effort (Kind of 
like the community being stretched across D1/Tango/D2).
July 23, 2009
Re: Reddit: why aren't people using D?
"Michiel Helvensteijn" <m.helvensteijn.remove@gmail.com> wrote in message 
news:h47v8p$131i$1@digitalmars.com...
>
> D just doesn't offer enough improvements over C++ to make it worthwhile
> switching over.
>

Even as a former die-hard C/C++ user, I've never really understood this 
argument. But, I'm not in the "you have to try it / sum of it's parts" camp 
either...

Better is just plain better. If you've got two things available, and one is 
better, it just doesn't make any sense to stick with the worse one if the 
only reason to do so is inertia. That would be plain laziness.

All of the following *individually* (ie, not just as a lump sum) are things 
for which I've always considered well worth leaving C/C++ in the history 
books where it belongs:

- No separate header/implementation files. (IMO, the king of all language 
anachronisms.)

- Non-null-terminated, slicable strings.

- Strong typing (Unless things have changed since I last looked, I refuse to 
accept C/C++ as *truly* strong-typed. Hell, most modern dynamic languages 
have more right to be called strongly-typed than C/C++.)

- True delegates and function literals.

- A sensible foreach instead of that horrid stl iterator mess. (And this 
opinion of mine was formed long before Andrei's ranges.)

- Metaprogramming that isn't a kludge (I'm looking at both the C 
preprocessor and the use of C++'s templates for anything beyond mere 
generics).

- The availability of build tools that make manual dependency-tracking (not 
to mention those god-awful "*make" programs) obsolete.

- "finally" (Or does C++ have this now too?) which fixes a fatal flaw in 
old-style exception handling (not to mention scope guards which even make 
"finally" look primitive, at least where applicable).

If you have any of these available, why *not* use them? Sure, D has it's 
well-known issues, but they're nothing compared to any of the above problems 
with C/C++. Hell, the last few times I used C/C++, the *only* reason was 
because it was the only viable systems language I was aware of.
July 23, 2009
Re: Reddit: why aren't people using D?
Nick Sabalausky wrote:
> All of the following *individually* (ie, not just as a lump sum) are things 
> for which I've always considered well worth leaving C/C++ in the history 
> books where it belongs:

And if D had just one of these features, plus all of the useful features
of C++, then I would be using D instead of C++.  But every time I find
that a useful C++ idiom has no equivalent in D (and every time D
introduces a new wart on top of the ones it inherits from C++), I am
knocked back into C++ land.


-- 
Rainer Deyke - rainerd@eldwood.com
July 23, 2009
Re: Reddit: why aren't people using D?
Nick Sabalausky wrote:
> Better is just plain better. If you've got two things available, and one is 
> better, it just doesn't make any sense to stick with the worse one if the 
> only reason to do so is inertia. That would be plain laziness.

It does take time and effort to learn a new tool, and that effort needs 
to be less than the expected gain.

> All of the following *individually* (ie, not just as a lump sum) are things 
> for which I've always considered well worth leaving C/C++ in the history 
> books where it belongs:
> 
> - No separate header/implementation files. (IMO, the king of all language 
> anachronisms.)
> 
> - Non-null-terminated, slicable strings.
> 
> - Strong typing (Unless things have changed since I last looked, I refuse to 
> accept C/C++ as *truly* strong-typed. Hell, most modern dynamic languages 
> have more right to be called strongly-typed than C/C++.)
> 
> - True delegates and function literals.
> 
> - A sensible foreach instead of that horrid stl iterator mess. (And this 
> opinion of mine was formed long before Andrei's ranges.)
> 
> - Metaprogramming that isn't a kludge (I'm looking at both the C 
> preprocessor and the use of C++'s templates for anything beyond mere 
> generics).
> 
> - The availability of build tools that make manual dependency-tracking (not 
> to mention those god-awful "*make" programs) obsolete.
> 
> - "finally" (Or does C++ have this now too?) which fixes a fatal flaw in 
> old-style exception handling (not to mention scope guards which even make 
> "finally" look primitive, at least where applicable).

My experience with C++ people sticking with it is they are so used to 
the problems they no longer see them. To me it's like the mess in one's 
house. One doesn't notice it until going on a vacation (i.e. learning a 
another language), having one's hotel room cleaned every day, then 
coming home and suddenly seeing how untidy it is <g>.


> If you have any of these available, why *not* use them? Sure, D has it's 
> well-known issues, but they're nothing compared to any of the above problems 
> with C/C++. Hell, the last few times I used C/C++, the *only* reason was 
> because it was the only viable systems language I was aware of.

The bizarre arguments I've seen are along the lines of "I don't want to 
use D because although it has X and Y which I love, it doesn't have Z 
and I really need Z", so they use C++ (or Java or C# or Python) which 
doesn't have X, Y, or Z.
July 23, 2009
Re: Reddit: why aren't people using D?
Walter Bright wrote:
> My experience with C++ people sticking with it is they are so used to
> the problems they no longer see them. To me it's like the mess in one's
> house. One doesn't notice it until going on a vacation (i.e. learning a
> another language), having one's hotel room cleaned every day, then
> coming home and suddenly seeing how untidy it is <g>.

I want to throw these words back at you, because my first impression of
D was "the bastard child of C++ and Java, with a random assortment of
new features thrown in without rhyme or reason".  D is many things, but
a simple and elegant language it is not.  (This is not a major problem
to me, really.  I can live with messy languages.  I can live with C++.
But to think that D is a massive improvement in this area requires a
special sort of perspective.)

The reason I have stuck with C++ despite its (massive, obvious) flaws is
that it has a couple of really nice and useful features that very few
other languages have even attempted to match.  D is the only language I
know that even tries, although it still falls short in many areas.


-- 
Rainer Deyke - rainerd@eldwood.com
July 23, 2009
Re: Reddit: why aren't people using D?
Rainer Deyke wrote:
> I want to throw these words back at you, because my first impression of
> D was "the bastard child of C++ and Java, with a random assortment of
> new features thrown in without rhyme or reason".  D is many things, but
> a simple and elegant language it is not.  (This is not a major problem
> to me, really.  I can live with messy languages.  I can live with C++.
> But to think that D is a massive improvement in this area requires a
> special sort of perspective.)

One measure of messy language semantics is the messiness of the compiler 
code needed to deal with it. D is a pretty clean language in comparison. <g>

Another way is measuring the change in source code size. I get about a 
30% reduction when translating C++ code more or less directly to D.

Yes, I think it is a massive improvement over C++ in simplicity and 
elegance. But if you try to write C++ code in D, you won't see as much 
of that as you would after being more used to the D way of doing things. 
For example, my early C code looked an awful lot like Fortran! It took a 
while before I used the language in a style that was natural for C. My 
first years of C++ code also looked a lot like just plain old C (in 
fact, it arguably still does).


> The reason I have stuck with C++ despite its (massive, obvious) flaws is
> that it has a couple of really nice and useful features that very few
> other languages have even attempted to match.  D is the only language I
> know that even tries, although it still falls short in many areas.

Fair enough. What are those two features?
July 23, 2009
Re: Reddit: why aren't people using D?
On 7/23/09 1:27 AM, Andrei Alexandrescu wrote:
> Walter Bright wrote:
>> http://www.reddit.com/r/programming/comments/93jh5/ask_proggit_the_d_programming_language_looks/
>
>
> I noticed some people complain about installation difficulties, is there
> progress on the community project for writing installer for the three
> major OSs?
>
> Andrei
>

Yes: http://www.dsource.org/projects/dmd-installer
I'm still waiting for Walter to add the osx installer to the dmd 
download page.
July 23, 2009
Re: Reddit: why aren't people using D?
"Rainer Deyke" <rainerd@eldwood.com> wrote in message 
news:h49153$2pbq$1@digitalmars.com...
> Walter Bright wrote:
>> My experience with C++ people sticking with it is they are so used to
>> the problems they no longer see them. To me it's like the mess in one's
>> house. One doesn't notice it until going on a vacation (i.e. learning a
>> another language), having one's hotel room cleaned every day, then
>> coming home and suddenly seeing how untidy it is <g>.
>
> I want to throw these words back at you, because my first impression of
> D was "the bastard child of C++ and Java, with a random assortment of
> new features thrown in without rhyme or reason".  D is many things, but
> a simple and elegant language it is not.  (This is not a major problem
> to me, really.  I can live with messy languages.  I can live with C++.
> But to think that D is a massive improvement in this area requires a
> special sort of perspective.)
>

D is certainly a bit messy compared to many languages, but I have a very 
difficult time imagining how it could be considered messy in comparison to 
C++. C++ has decades of accumulated cruft from trying to cram in 
usable-but-clumbsy new features around piles of backwards-compatible 
anachronisms. The mess in D barely begins until a level that's far beyond 
where C++ takes you before getting messy. And this cannot be a result of me 
having become more accustomed to D than C++ - I've considered C++ the 
messiest non-dead language I know of since before I came across D, and even 
since the last time I was using C++ as my primary language.
1 2 3 4 5 6 7
Top | Discussion index | About this forum | D home