Steven Schveighoffer wrote:
what needs to be done:

1. Make Tango build on top of druntime. I just merged from trunk yesterday, which was about 300 files, so most likely there will be compile issues ;)
2. Const-ify everything.  Some parts are already done.
3. Make all opApply's scoped properly.

Not sure what happens after that, but step 2 alone is a ton of work. In addition, there are some blocker bugs in DMD (1645 and 2524 right now) that prevent a complete port.

When the shared/unshared paradigm is released, there's probably another ton of work to do :)

You can already used shared/unshared. The semantics aren't implemented, but the type system support for it is.


And of course, there's the possibility of redesigns. A lot of code can probably make use of __traits and there are the new range constructs to consider. Of course, these are all probably things that would be severely different from the D1 version, so they probably won't happen for a while.

Note that the September or later date is based on the amount of time I spend on it (which isn't a lot). Someone who wanted to do nothing but porting Tango to D2 could probably get it done in a month or two. Note also that I don't consider the port done until all the "cast to get it to compile" hacks are removed. In some cases, this requires design changes, and in some of those, tough decisions.

-Steve

Reply via email to