Don, just so you know, I've been thinking for a while about transitioning from doing the semantic pass in order to doing it completely "on demand". In other words, try to semantic a declaration. In the process, any declarations it depends on are semantic'd if not already, recursively.

I've been wondering for quite some time about how one could leverage the D module system to properly parallelize D compilation. (Of course I'm not speaking about the crappy C way of compiling modules separately with make -j where everything is processed umpteen times)

I think lexing and parsing could be done in parallel without problems?!
Semantic analysis is the tough part but one could probably consider the import graph and process all the sinks, i.e. modules that only import modules already processed or no modules, in parallel and then start a new iteration?!

Now I wonder how that would interact with the proposed on-demand semantic analysis.
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals

Reply via email to