Andrei Alexandrescu wrote:
On 6/14/11 4:07 AM, Don wrote:
Petr Janda wrote:
Hi,

Can someone please explain what needs to be done (other than fixing
the plethora of bugs) to call D2 final? And if someone can provide
an approximate estimate of when?

There are a couple of areas of major missing functionality:
* CTFE should support pointers (upcoming release 2.054) and classes
(2.055).
* alias this, inout, safe aren't fully implemented, and will probably
require language changes/clarifications.
* Built-in struct functions (opEquals, toString, etc) need more thought.
* I suspect that we'll see changes to the modifiers for function
parameters (in, out, inout, ref, auto ref)

* Work last kinks out of qualified constructors and destructors
* Low-level threading support with shared; change language to match TDPL (that means e.g. shared/synchronized methods is at class level, not method level).
* Minor touches such as user-defined operator '$', @disable etc.

Work that is not quintessential for using D but very important:

* Finish typechecking for SafeD
* Make SafeD == CompileTimeD

We should put this list somewhere.

At the current rate of progress I estimate we are about six months from
having the language implemented (but still with bugs).
But there will still be bugs which can only be fixed by making small
changes to the language spec.

Phobos is quite a bit further away from being "final".

* Define allocator abstraction
* Overhaul std.container to use it; add classic containers to std.container (doubly-linked list, hash, deque)
* Define streaming abstraction (already in my head)
* Add high-level networking (Jonas, where art thou?)
* Redo xml (Tomek)
* Many other changes and additions


Andrei

Added to the existing roadmap at:
http://www.prowiki.org/wiki4d/wiki.cgi?LanguageDevel

Reply via email to