Luke Gorrie writes:
Alain.Picard@memetrics.com writes:
Luke Gorrie writes:
Great! The OpenMCL backend is currently the shortest/simplest, so I would guess the easiest approach it to port that to LispWorks.
Okay. I'll start with that.
If you write that, we can run the test suite against LispWorks along
There's a test suite?! Wow. ;-)
You can run it with `M-x slime-run-tests'. It even has a pretty
It's a nice theory. However, on my emacs,
I get:
M-x slime-run-tests
Failed on 24 of 19 tests. byte-code: Symbol's function definition is void: hide-body
[I discovered that that's because I seem to use NOUTLINE, instead of regular OUTLINE. I'll try to use `emacs -q' to do my slime hacking from now on.] I'm using cmucl 18e to bootstrap my way into all this.
Current results are: Failed on 5 of 19 tests.
* find-definition ** input: (list list.lisp) Definition of `list' is in "list.lisp". Definition now at point. Returning from definition restores original buffer/position. ** input: (loop loop.lisp) Definition of `loop' is in "loop.lisp". Definition now at point. Returning from definition restores original buffer/position. ** input: (aref array.lisp) Definition of `aref' is in "array.lisp". Definition now at point. Returning from definition restores original buffer/position. * complete-symbol ** input: (cl:compile (cl:compile cl:compile-file cl:compile-file-pathname cl:compiled-function cl:compiled-function-p cl:compiler-macro cl:compiler-macro-function)) FAILED: Completion set is as expected. ** input: (cl:foobar nil) Completion set is as expected. ** input: (cl::compile-file (cl::compile-file cl::compile-file-pathname)) Completion set is as expected. * arglist ** input: (list (list &rest args)) Argument list "(list &rest args)" is as expected. ** input: (defun (defun &whole source name lambda-list &parse-body (body decls doc))) FAILED: Argument list "(defun &whole source name lambda-list &body (body decls doc))" is as expected. ** input: (cl::defun (cl::defun &whole source name lambda-list &parse-body (body decls doc))) FAILED: Argument list "(cl::defun &whole source name lambda-list &body (body decls doc))" is as expected. * compile-defun ** input: ((defun :foo () (:bar)) (:bar)) error-location-correct ** input: ((defun :foo () #\space ;;Sdf (:bar)) (:bar)) error-location-correct ** input: ((defun :foo () #+(or)skipped #| #||# #||# |# (:bar)) (:bar)) error-location-correct ** input: ((defun :foo () (list `(1 ,(random 10) 2 ,@(random 10) 3 ,(:bar)))) (:bar)) FAILED: error-location-correct * async-eval-debugging ** input: (1) Automaton initially in idle state. Automaton stack reflects debug level 1. Maximum depth reached (1) is 1. Automaton is back in idle state. ** input: (2) Automaton initially in idle state. Automaton stack reflects debug level 1. Automaton stack reflects debug level 2. Maximum depth reached (2) is 2. Automaton is back in idle state. ** input: (3) Automaton initially in idle state. Automaton stack reflects debug level 1. Automaton stack reflects debug level 2. Automaton stack reflects debug level 3. Maximum depth reached (3) is 3. Automaton is back in idle state. * loop-interrupt-quit ** input: nil Automaton initially in idle state. In eval state. First interrupt. Automaton is back in idle state. * loop-interrupt-continue-interrupt-quit ** input: nil Automaton initially in idle state. In eval state. First interrupt. No sldb buffer. In eval state. Second interrupt. Automaton is back in idle state. * interactive-eval ** input: nil Automaton is back in idle state. FAILED: Minibuffer contains: "=> t"
Note that to start all this, I have to first load slime, do M-x slime; I get an error in cmucl: ; Compilation unit aborted. ; 2 notes
; Compilation aborted after 0:00:01. ;; Loading #p"/home/ap/Lisp/slime/swank-cmucl.lisp".
Reader error at 11874 on #<Stream for file "/home/ap/Lisp/slime/swank-cmucl.lisp">: Symbol "WHO-MACROEXPANDS" not found in the XREF package.
Restarts: 0: [CONTINUE] Use symbol anyway. 1: Return NIL from load of #p"/home/ap/Lisp/slime/swank-cmucl.lisp". 2: Return NIL from load of "/home/ap/Lisp/slime/swank-loader". 3: [ABORT ] Return to Top-Level.
Debug (type H for help)
(COMMON-LISP::READ-TOKEN #<Stream for file "/home/ap/Lisp/slime/swank-cmucl.lisp"> #\x) Source: ; File: target:code/reader.lisp (WITH-SIMPLE-RESTART (CONTINUE "Use symbol anyway.") (ERROR 'READER-PACKAGE-ERROR :STREAM STREAM :FORMAT-ARGUMENTS ...))
Continuing:
0] :c 0 T
And manually starting the server
* (swank:start-server)
;; Swank ready.
lets me run the tests.
Enough for tonight...
Cheers.