<cl> (comp-show '(lambda (a) a))
ARGS 0
FN
ARGS 1
LVAR 0 0 ; A
RETURN
RETURN
NIL
<cl> (comp-show '(lambda (a b) b))
ARGS 0
FN
ARGS 2
LVAR 0 1 ; B
RETURN
RETURN
NIL
<cl> (comp-show '(let ((a 10)) a))
ARGS 0
CONST 10
FN
ARGS 1
LVAR 0 0 ; A
RETURN
CALL 1
RETURN
NIL
<cl> (comp-show '(let ((a 10) (b 20)) a b))
ARGS 0
CONST 10
CONST 20
FN
ARGS 2
LVAR 0 0 ; A
POP
LVAR 0 1 ; B
RETURN
CALL 2
RETURN
NIL
<cl> (comp-show '((lambda (a b) a b) 10 20))
ARGS 0
CONST 10
CONST 20
FN
ARGS 2
LVAR 0 0 ; A
POP
LVAR 0 1 ; B
RETURN
CALL 2
RETURN
NIL
<cl> (comp-show
'(let ((a 10) (b 20))
(let ((c 30) (d 40))
(let ((e 50) (f 60))
(list a b c d e f)))))
ARGS 0
CONST 10
CONST 20
FN
ARGS 2
CONST 30
CONST 40
FN
ARGS 2
CONST 50
CONST 60
FN
ARGS 2
LVAR 2 0 ; A
LVAR 2 1 ; B
LVAR 1 0 ; C
LVAR 1 1 ; D
LVAR 0 0 ; E
LVAR 0 1 ; F
GVAR LIST
CALL 6
RETURN
CALL 2
RETURN
CALL 2
RETURN
CALL 2
RETURN
NIL
<cl> (comp-show
'((lambda (a b)
(let ((a 1) (b 2))
(list a b)))
3 4))
ARGS 0
CONST 3
CONST 4
FN
ARGS 2
CONST 1
CONST 2
FN
ARGS 2
LVAR 0 0 ; A
LVAR 0 1 ; B
GVAR LIST
CALL 2
RETURN
CALL 2
RETURN
CALL 2
RETURN
NIL