DConf 2014 Day 1 Talk 4: Inside the Regular Expressions in D by Dmitry Olshansky

Dicebot via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Thu Jun 12 06:00:06 PDT 2014


On Thursday, 12 June 2014 at 12:49:23 UTC, Timon Gehr wrote:
> On 06/12/2014 02:31 PM, Dicebot wrote:
>> Compiler can cache return value of function that get called 
>> from inside
>> mixin statement (for a given argument set). As CTFE is 
>> implicitly pure
>> (no global state at compile-time) later generated code can be 
>> simply
>> re-used for same argument set.
> >
>> Re-using it between compiler invocations is more tricky 
>> because it is
>> only legal if generator function and all stuff they indirectly 
>> use have
>> not changed too. Ignoring this requirement can result in nasty 
>> build
>> issues that are only fixed by clean build. Too harmful in my 
>> opinion.
>
> Clearly, nirvana is continuous compilation, where the compiler 
> performs explicit dependency management at the level of nodes 
> in the syntax tree.

Yeah I was wondering if we can merge some of rdmd functionality 
into compiler to speed up rebuilds and do better dependency 
tracking. But I am not sure it can fit nicely into current 
frontend architecture.


More information about the Digitalmars-d-announce mailing list