At the gsoc I was using something like this:
a better (simplified) C++:
- close to C but not 100% backward compatible, either it compiles or it gives
an error
- easy to link C, partially possible to use C++ libs (no template
instantiation)
- single inheritance + interfaces (and contracts)
- garbage collection (possible to avoid with some effort)
- better templates (template language close to normal D, constraints), CTFE and
mixing
- auto/foreach
- delegates
- immutable/const/pure if the discussions goes in that direction
and going more in depth in the things that did strike the listener.
I was also surprised about how many already heard something about D, I got even
some questions about D1/D2 tango/phobos.
My answers were something along these lines:
- D2 toolchain becoming now robust enough to be chosen for new projects (with
gdc finally also 64 bits)
- D1 simpler, but misses some nice features of D2, not all D2 features are
perfect, but the proposal is compelling
- it was difficult for the community to improve the lib & druntime -> tango,
personally I think it is the better library for D1 (I was contributing to it),
unfortunately not compatible with phobos. D2 runtime, and no tango yet, but
if/when it comes likely it will use druntime.
Fawzi