The Next Mainstream Programming Language: A Game Developer's Perspective :: Redux
downs
default_357-line at yahoo.de
Sat Jul 14 08:20:00 PDT 2007
I basically agree with the GC issues.
If it were up to me, I'd integrate a separate mode into the GC, in which it is only run in debug
mode - and breaks on collection! Basically, I'd not use it as a collector per se, but as a tool to
make manual memory cleaning easier.
Apart from that, I agree D is not quite ready for a massively parallel future - but the strength of
the language is such that it can be made to be ready, without requiring any in-depth changes.
Take the following example.
foreach (foo; parallel(bar)) { /* do stuff with foo */ }
Looks neat? It can be made to work _today_, with D 1.0 or 2.0, GDC or DMD, without requiring _any
changes to the compiler_, using exclusively language features (about one page of code) - and even
without any significant runtime overhead! :D
And there's a decent amount of multithreading extensions for D already. Take a look at StackThreads
or DCSP on http://assertfalse.com/projects.shtml , all implemented using a minimum of machine
specific code, and working fine (I think. I hope. :p )
From my (admittedly overoptimistic and fanboyish) perspective, even without threading built into
the language, D is quite prepared for a massively-multithreaded future. :)
--downs
More information about the Digitalmars-d
mailing list