Help!

Manu turkeyman at gmail.com
Wed Nov 28 01:49:00 PST 2012


On 28 November 2012 03:40, deadalnix <deadalnix at gmail.com> wrote:

> On Wednesday, 28 November 2012 at 00:07:42 UTC, bearophile wrote:
>
>> Walter Bright:
>>
>>  It is unbelievably frustrating for people to have their code break with
>>> each new release, have older projects all invalidated, with few willing to
>>> do the maintenance work to bring them back on line.
>>>
>>
>> I am still converting some of my D1 code to D2, plus I have lot of D2
>> code. Since many months I have stopped downloading official dmd releases
>> because the amount of breakages in my D2 code between a version and the
>> successive one was too much large. DMD 2.061 has so many changes and
>> improvements that it will require several changes in everyone D2 code.
>>
>> To avoid performing such large amount of changes I now compile dmd every
>> two or three days, and I have scripts that compile all my D2 programs and
>> report the breakages. This way I fix a small amount of breakages at a time
>> in my D2 code, this is simpler.
>>
>> Most of those breakages are caused by bug fixings that reveal bugs in my
>> D2 code (example: since recently throwing constructors accepted a nothrow
>> tag, and I have many more examples). But I am willing to perform this
>> maintenance work because they improve my future D2 programming and code.
>>
>> If we add to those bug-fixing-changes some breakage caused by design
>> changes, this is not going to make my live significantly worse, it's just
>> one more breakage among several others.
>>
>>
> Don't you think that this whole situation is due to adding feature after
> feature in an unstabilized mess ?
>

Not really. I haven't seen any problems in any new stuff since I've been
around.

Almost all the issues I encounter stem from the type system (like the
alias/builtin type thing discussed), tuples (value/expression/type tuples?
what is the syntax to identify these? what are they exactly?),
is()/__traits not identifying things cleanly (strange workarounds to
identify seemingly trivial details)... and ref.

Every one of these things was in the language before I started using it, so
at least to me, they feel like old features that have just always been
there...


I mean, how the fact that a nothrow constructor can throw can be explained
> in another way (to use your example) ? A feature in that state should have
> reached any release, ever !
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20121128/0e47aa72/attachment.html>


More information about the Digitalmars-d mailing list