> And I don't believe in "premature correctness". ;-)

Interesting statement. Translation: "Resolve as late as possible". This indeed 
has consequences for both language and compiler design. E.g. for incremental 
compilation. The compiler collects packed AST parts . At the very end, they get 
checked against precompiled encoded parts (available already) and if parts 
match, the precompiled part will be taken - resolution using a cache. But if 
the compiler could prove stable contexts early, so that some parts will not 
change later on, the compiler would do a split. Either, the cache already 
provides an encoded version - nothing needs to be done then, elsewise, it could 
be passed to another thread/processor.

C++ modules clearly give priority to early resolution. 

Reply via email to