Waldek Hebisch <[EMAIL PROTECTED]> writes:
> This is an old bug. IIRC in Issue Tracker we have a few reports
> that looks like this problem.
OK, I found "#274 Can't get a parameter in an anonymous function"
> In the past I looked at code handling closures and my impression was that the
> code was "broken by design". More precisely, to correctly handle closures
> one needs precise information about scopes (including information which
> symbols represent variables). It seems that part of scope information is
> never collected and part is already lost when closures are handled.
Oh dear.
> I may be wrong and it is possible a simple fix will cure things. However,
> given that I do not believe in a simple fix to closure problem I did not
> spent much time searching for such fix.
OK. There is one thing that gave me hope however: providing type information
seems to be a cure:
(1) -> f3 z == (x: INT):INT +-> gcd(x,z)
Type: Void
(2) -> f3 5
(2) theMap(NIL,519)
Type: (Integer -> Integer)
(3) -> % 25
(3) 5
Type: PositiveInteger
Do you have examples where typing things does not help? I'll add my examples
to IssueTracker and bugs2008, in any case.
Martin
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
open-axiom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel