Re: makeLazySlot: "nonlocal exit by lazy slot's maker"
Kevin Reid <kpreid-M/[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
On Jan 7, 2011, at 8:20, Thomas Leonard wrote:
> makeLazySlot checks that it was successful by checking that the result
> is resolved. This doesn't work if the maker function returns a
> promise.
>
> Here's a patch:
>
> http://gitorious.org/~tal-itinnov/repo-roscidus/it-innovation/commit/63aa9352a6b4bad1878fa75f1f2d563b3aeac84c
Eyeballed, seems OK to commit.
I would recommend either adding a note to require(maker != null) that
this is an implementation accident and not a deliberate element of the
interface, or using a private pumpkin (def pumpkin {}; ... maker :=
pumpkin).
--
Kevin Reid <http://switchb.org/kpreid/>