[e-lang] <import> with cycle breaking is not DeepFrozen
Mark S. Miller
markm at cs.jhu.edu
Wed May 31 13:07:38 EDT 2006
Kevin Reid wrote:
> On May 22, 2006, at 0:51, Mark S. Miller wrote:
>
>> I like:
>>
>>> Proposal #2:
>>>
>>> Make <import> not marked DeepFrozen.
>>>
>>> Anything which is to be DeepFrozen would need to not refer to
>>> <import>. I'm not sure how bad this would be.
>> Even with the restriction of proposal #1, <import> isn't really
>> DeepFrozen
>> anyway, since it depends on the state of the filesystem at the time
>> a module
>> is first imported.
>
> There is a fix for this, which I thought I mentioned before:
> <import>'s access to the filesystem can be through a proxy which
> caches the contents of every file it reads. <resource> either is or
> also uses this proxy.
Yes, I think this would work.
> Also, here's one consequence: if <import> is not DeepFrozen, then
> safeScope is not, which means that anything which wants to evaluate E
> code in the usual scope is not.
A good point. Making <import> DeepFrozen impedes incremental development, but
not making it DeepFrozen seems to have worse costs.
--
Text by me above is hereby placed in the public domain
Cheers,
--MarkM
More information about the e-lang
mailing list