where clause

spir denis.spir at gmail.com
Tue Mar 8 05:27:15 PST 2011


On 03/08/2011 09:37 AM, bearophile wrote:
> Caligo:
>
>> I don't understand why so many here are obsessed with constantly trying to
>> "improve" D and/or find things that are wrong with the language just so they
>> can come up with a solution.  We've had feature freeze, have we not?
>
> There are several unfinished features and parts in the current D2, so the right thing to do is to work on them and on bugs, instead of piling even more uncooked things on D2. On the other hand, a programming language is an alive thing, if it stops its development, it dies.
>
> People are designing even new C and Fortran features, and they are languages far older than D:
> http://en.wikipedia.org/wiki/C1X
>
> So new ideas for D3 language, or to fix D2 holes/warts are important.
>
> And language communities too are alive things. If there's no development of new ideas or fun things, the vitality of the community decreases.

Another point of view: D2 has been in great part designed _a priori_; this a 
priori design is a big part of what TDPL describes. As we all know (one of the 
few things history of programming has taught us), this is not often a 
sustainable way to develop, even for trivial apps. Instead, one discovers what 
a correct design should be along with guesses, trials, prototyping, 
implementation, testing, and real use, more real use, even more real use. Say, 
this is the creative and exploratory part of programming.
A PL language is often a huge system, hyper complex, and very abstract (by 
definition, it is one level more abstract than any app program ;-). And D2 is a 
very big and complicated language; and far to be orthogonal, which means 
independently imaged features actually interact in unpredicted manners. (*)
We should not allow D2, I guess, freeze on wrongly conceived (a priori) design; 
then, it's too late.
No idea what Walter and Andrei think of this, but for me these are facts. You 
may think this is lost time, energy, & motivation; but the alternative is 
having an unusable PL; at least in its more innovative, interesting, and 
attractive features; which means all programmers would simply stick with 
C/C++/C#/Java.

Denis

(*)Even one of its best thought features, problably: ranges, needs be 
constantly questionned; while this is precisely a feature that should be highly 
orthogonal to most other dimensions of the language, to be nearly transpatently 
usable --and used-- everywhere.
We are still far to be there, I guess; ranges instead constantly get it the way 
(of my programming practice); to the point I know avoid them. Their greatest 
side is the ability to use algorithms uniformly with any collection, but the 
most commons of such algos (map, filter) are trivial funcs.
-- 
_________________
vita es estrany
spir.wikidot.com



More information about the Digitalmars-d mailing list