Hi Doug,

the following works:

   (be a (3))

   (be foo @C
      (2 -> @C) )


   : (? (foo (a @Z)))
    @Z=3                
   -> NIL

I spied what 'call/1' is doing ;-) That number magic with '2' is a bit
tricky, I'm never sure what level to pick. Basically it tells the
interpreter with which level it should unify (here, the level outside of
'foo').


Actually, you could also use

   (be foo (@C)
      (2 cons (-> @C)) )

but this needs additional consing for the expression to match, so I
would avoid it. It depends on what else is done with '@C'.

Cheers,
- Alex
-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to