Just where has this language gone wrong?
Paulo Pinto
pjmlp at progtools.org
Sun Jul 22 11:24:19 PDT 2012
Am 22.07.2012 00:16, schrieb Nick Sabalausky:
> On Sat, 21 Jul 2012 23:14:12 +0200
> "Stuart"<stugol at gmx.com> wrote:
>> Let me just add, I really *like* the terse syntax of D. Lambdas,
>> uniform function call syntax, and so on.
>>
>
> Yea. I used Java in college and ever since then I've been a fan of
> non-verbose systax - ie syntax that's the *opposite* of Java ;)
>
Actually that verbose sintax is quite helpful when dealing with gigantic
code bases in big corporation projects like where I work.
The type of "programmer clogs" we have in our projects are so low skill,
that I have bad dreams what they could do in more powerfull languages.
Already C# is highly advanced for some of them!
What I hate in Java is the abuse of annotations to avoid introducing new
keyworks, like @overload. This recalls me of a software project where
the DSL in use, got so many annotations that it become unmanageable.
>>
>> Garbage-collection I can live without. Closures, properties and
>> events I really miss when they're not available. But header files
>> were the single worst thing to ever befall coders.
>
> I agree, a proper module system was one of the first, biggest things
> that drew me to D - It was one of the handful of things Java actually
> got *right* compared to C++ (another big one being reference semantics
> for classes). When I use C++, a proper module system is one of the
> biggest things I miss.
>
> Aside from the issues you mention, there's another big benefit to
> killing off the #include system and switching to D: Type names and other
> identifiers aren't cluttered up with the noise of a make-shift module
> system. (Yea, there's namespaces, but not everyone seems to use them.
> I assume there's probably good reasons for that...besides easier
> integration with D ;) )
Legacy code. As some compilers took several years to fully support the
standard. This was one of the things that got my interest in Java back
in 1996.
Finally a C++ like language, where I could make use of modern C++
features, without getting the source code full of #ifdef.
>
> For example, I'm using the IwGame C++ library
> ( http://www.drmop.com/index.php/iwgame-engine/ ) and fucking *EVERY*
> type name is prefixed with "CIwGame...". And anything from the
> underlying Marmalade starts with "CIw..." so basic vectors are
> named convoluted shit like "CIwFVec2". Of course, this is on top of the
> fact that until C++11 becomes more widespread there isn't a damn bit of
> type inference anywhere, so those horrific full names have to be used
> EVERYWHERE. With a proper module system like D's, there'd be no
> problem with names like "ImageActor" and "FVec2" instead of
> "CIwGameImageActor" and "CIwFVec2", because conflicts could be easily
> detected and dealt with.
>
> And of course the other real obvious benefit of killing #include: None
> of that separate cpp/h file bullshit.
>
> C++ is living in the 70's. It should have a mascot wearing a leisure
> suit.
>
Very true.
I never understood why C++ could not have a module system. It would
still be possible to compile C code anyway. In fact, in Turbo Pascal you
get both, a preprocessor with includes and modules(units).
The sad thing is that most languages designed in the early 80's all had
proper modules.
--
Paulo
More information about the Digitalmars-d
mailing list