Does D have too many features?
bearophile
bearophileHUGS at lycos.com
Mon Apr 30 16:42:31 PDT 2012
akaz:
> Well, these are some. I feel that the right line is somewhere
> between D1 and D2. It is good that advanced, complex features
> are present in D, I just not want to be forced to use those
> when porting "traditional" C code.
>
> I expected to meet D and exclaim: wow! C++ done right! Instead,
> I feel like being forced to learn another, completely new
> paradigm language, like I would start with Lisp or something
> else.
I think D is not C++ done right any more, it's a new language.
This was probably necessary if you want D to have a more than
minimal chance of success.
I have translated a significant amount of C code to D1 and D2,
and usually in such simple porting I find bugs in the original C
code, like off-by-on errors in arrays, missing returns, missing
breaks in switches, dead code paths caused by precedent returns,
erroneous re-uses of loop variables used in outer scopes, and so
on. So I love such (moderate) bug-discovering qualities of D, and
I'd like D to have even more of them.
In many cases D doesn't force you to use its advanced features,
it allows you to write very C-looking code too (that is usually
bad D code). But probably D can't allow this in every case, some
things need to change if you want to improve the language a
little. So think of those forced uses as a small price to pay to
have a better language.
Bye,
bearophile
More information about the Digitalmars-d
mailing list