soltanis
April 13th, 2009, 04:26 AM
So I have a question with the SBCL Common Lisp implementation. Why is it that every time I use the REPL and make a mistake, for example,
* (apply #'foo (1 2))
The error is
; in: LAMBDA NIL
; (1 2)
;
; caught ERROR:
; illegal function call
;
; compilation unit finished
; caught 1 ERROR condition
debugger invoked on a SB-INT:COMPILED-PROGRAM-ERROR in thread #<THREAD "initial thread" RUNNING {A8345C9}>:
Execution of a form compiled with errors.
Form:
(1 2)
Compile-time error:
illegal function call
What is LAMBDA NIL? Does SBCL wrap all its compilation units into a lambda function that takes no arguments, and then execute it?
* (apply #'foo (1 2))
The error is
; in: LAMBDA NIL
; (1 2)
;
; caught ERROR:
; illegal function call
;
; compilation unit finished
; caught 1 ERROR condition
debugger invoked on a SB-INT:COMPILED-PROGRAM-ERROR in thread #<THREAD "initial thread" RUNNING {A8345C9}>:
Execution of a form compiled with errors.
Form:
(1 2)
Compile-time error:
illegal function call
What is LAMBDA NIL? Does SBCL wrap all its compilation units into a lambda function that takes no arguments, and then execute it?