d bare bones
Ramon
spam at thanks.no
Fri Sep 6 20:35:48 PDT 2013
On Saturday, 7 September 2013 at 00:05:08 UTC, Dicebot wrote:
> On Friday, 6 September 2013 at 19:24:22 UTC, Ramon wrote:
>> Frankly, when hacking the kernel you use C, period. There are
>> alternatives, Ada for instance but they have a price tag too.
>> And
>> D, with all the warm feelings we might have for it, is not one
>> of
>> those alternatives.
>
> Lot of confusion comes from some earlier times when D was
> implicitly advertised as systems programming language. It
> simply gave too much hope - one needs to be get engaged deep
> into kernel/embedded industry to understand how freaking fed up
> some programmers are from C in that domain. Thus all the
> frustration - one sees the possibility of final salvation from
> 60 year old tool stack only to find out that it in practice
> competes in C# domain.
>
> Which is pretty bold move because it has completely missed
> possible niche with zero alternatives and thus competence.
>
> Eventually I got used to it and currently only try to make some
> buzz so that situation won't get even worse - but consequences
> of false advertising still roam across the internet.
I tried to stay positive but you are right. This is a good
example for what I meant and for what I perceive throughout
different spots with D.
It strikes me as hard to understand when very important factors
seem to be simply ignored. In the embedded world where 1KB can be
a lot and where one tries to squeeze out another 50us or another
200 Bytes other laws and priorities are valid than in userland
where libraries in the MB range are seen as granted.
My point wasn't that C is perfect for embedded. My point was that
D is the wrong tool there. If, on the other hand, one wanted to
develop an improved "C2e" for embedded (and probably kernel) that
language almost certainly would disappoint in the userland
application development - those two worlds are just too different.
I don't mean to sound blunt but I see another point that rarely
gets addressed. WB wanted to scratch an itch. That's OK and he
was free to do that in any way he saw fit or felt fine. But -
luckily for us - he went further and opened it and wanted, if I'm
not very mistaken, D to become (more) widely used.
From that moment on the target audience was to be heard and
included.
Similarly I value AA's work very highly but I feel that we should
have 1 (in words: one) complete and widely acceptable toolchain
on the major platforms - and - have a reliable and reliably
working version of whatever first before adding and changing
things. Probably some wouldn't be happy with, say, Scite (with D
support) and GDB (with D support) and, for instance, not yet
supporting 64bit linux. But it would be a base to say "You *can*
work. No let's go and enhance and grow D, it's standard lib and
it's eco system".
Unfortunately the path chosen led us to a situation where D and
phobos are somewhat floating, the advertisements aren't honest,
unmistakable and to the point, and the tools are quite floating
and often half-cooked or limited, too.
Let me shed light on what I mean from another perspective: There
is a reason for a language having lots of alpha, broken, and quit
projects in its environment. It very often (if not almost always)
translates to: people discovered the language, were attracted by
the first impression, even had a need for it, invested time,
efforts, and know-how - and then left.
If we really want D to grow and spread, we will have to see and
realize that and to think hard about it and about how to improve.
I'm sorry, honestly sorry, that I myself can not (yet) contribute
much more than thoughts and constructive(!) criticism. I'm
working on it and - thanks to Iain (I was just a split second
away from leaving D) - I stayed. That's not much but it's the
best I can give as a D newbie and it's much more than just
leaving like so many before me.
Have a nice weekend, everyone -R
More information about the D.gnu
mailing list