DIP31 (Was: Re: Bountysource: Facebook offers additional funding for D issues)

deadalnix deadalnix at gmail.com
Fri Mar 14 17:26:34 PDT 2014


On Friday, 14 March 2014 at 23:25:47 UTC, Timon Gehr wrote:
> On 03/14/2014 11:50 PM, deadalnix wrote:
>> ...
>>> "Any attempt to resolve a symbol will create a poison at the
>>> corresponding entry. ... Construct of priority 2 are 
>>> evaluated in
>>> order of appearance in the source."
>>>
>>> Order of appearance in the source is not well-defined. There 
>>> can be
>>> circular imports. In any case, strategies dependent on 
>>> declaration
>>> order at all do not result in predictable/flexible enough 
>>> semantics in
>>> my opinion. One would need to reduce in parallel until 
>>> analysis is
>>> completely stalled on lookups of unpoisoned symbols. Then one 
>>> poisons
>>> all the stalled lookups in the topmost strongly connected 
>>> component of
>>> the lookup-dependency-graph at once.
>>>
>>
>> Order of inclusion only matter for symbol in socpe when 
>> compile time
>> construct are present. They may introduce random symbols, it 
>> do not
>> seems possible to make them independent of order in the source 
>> code in a
>> paradox free manner. I have no proof of this, and I'd be happy 
>> to be
>> proven wrong.
>> ...
>
> It can be done. (What I described above works strictly better 
> than the DIP afaics.)
>

It is difficult to judge, you didn't provided many details. I
don't see how your proposal could work without having significant
risk of heavy backtracking. Can you precise what you have in mind
?


More information about the Digitalmars-d mailing list