Menu

#1581 sublis & sublis_apply_lambda:true causing lisp errors

None
closed
None
4
2018-06-10
2009-02-06
No

(%i1) sublis([f = lambda([[x]],'g)], f[2](x));
Maxima encountered a Lisp error:

The subst function does this OK.

Discussion

  • Kris Katterjohn

    Kris Katterjohn - 2018-06-10
    • summary: sublis & subscripted functions --> sublis & sublis_apply_lambda:true causing lisp errors
    • assigned_to: Kris Katterjohn
    • Group: --> None
     
  • Kris Katterjohn

    Kris Katterjohn - 2018-06-10

    This only happens when sublis_apply_lambda is true and does not depend on subscripted functions:

    (%i1) sublis_apply_lambda : false$
    
    (%i2) sublis ([f = lambda ([], 'g)], f () ());
    (%o2) lambda([],'g)()()
    
    (%i3) sublis_apply_lambda : true$
    
    (%i4) sublis ([f = lambda ([], 'g)], f () ());
    <lisp error>
    

    I have a fix that I'll commit and push soon.

     
  • Kris Katterjohn

    Kris Katterjohn - 2018-06-10
    • status: open --> closed
     
  • Kris Katterjohn

    Kris Katterjohn - 2018-06-10

    This has been fixed by commit [bdd809].

    (%i1) sublis_apply_lambda : false$
    
    (%i2) sublis ([f = lambda ([], 'g)], f () ());
    (%o2) lambda([],'g)()()
    
    (%i3) sublis_apply_lambda : true$
    
    (%i4) sublis ([f = lambda ([], 'g)], f () ());
    (%o4) g()
    
     

    Related

    Commit: [bdd809]


Log in to post a comment.