- #1
Mentz114
- 5,432
- 292
I'm a lisp novice, so naturally I've got into a mess trying to do something that would be elementary in a procedural language. I want to return this list
( ( a SIMP) ( (MLIST SIMP) x ) (MLIST SIMP) y ) )
from a func where x,y are args passed to the function. x and y are atoms.
This
(list '( a SIMP) '( (MLIST SIMP) x ) '(MLIST SIMP) y ) )
does not fail but obviously x and y are unevaluated.
This
(list '( a SIMP) ( ('MLIST 'SIMP) x ) ('MLIST 'SIMP) y ) )
complains about an unbound datum.
I tried to delete this thread but I couldn't. A solution is
(setq lo (list '(MLIST SIMP) x))
(setq hi (list '(MLIST SIMP) y))
(setq res (list '(a SIMP) lo hi ))
( ( a SIMP) ( (MLIST SIMP) x ) (MLIST SIMP) y ) )
from a func where x,y are args passed to the function. x and y are atoms.
This
(list '( a SIMP) '( (MLIST SIMP) x ) '(MLIST SIMP) y ) )
does not fail but obviously x and y are unevaluated.
This
(list '( a SIMP) ( ('MLIST 'SIMP) x ) ('MLIST 'SIMP) y ) )
complains about an unbound datum.
I tried to delete this thread but I couldn't. A solution is
(setq lo (list '(MLIST SIMP) x))
(setq hi (list '(MLIST SIMP) y))
(setq res (list '(a SIMP) lo hi ))
Last edited: