So, ive decided I should probably use ecl lisp. So heres da problem. Examine this output that produced an error:
(:emacs-rex ;;the request
(swank:connection-info)
"COMMON-LISP-USER" t 1)
;; response read error given below!!
Debugger entered: nil
(condition-case error (slime-net-read) (error (debug) (slime-net-close process t) (error "net-read error: %S" error)))
slime-net-read-or-lose(#<process SLIME Lisp>)
slime-process-available-input(#<process SLIME Lisp>)
slime-net-filter(#<process SLIME Lisp>
;;the response which produced above error
13(:return (:ok (:pid 5548 :style nil :lisp-implementation (:type "ECL" :name "ECL" :version "9.12.3")
:machine (:instance "SE")) 1) ;;ß---------------Threading issue???
TH-PC" :type "x86" :version "17") ;;ß----Should be SETH-PC but its broken up!!!!
:features (:wsock :win32 :formatter :uint32-t :uint16-t :relative-package-names :unicode :dffi :clos-streams :cmu-format :msvc :ecl-pde :dlopen
:clos :threads :boehm-gc :ansi-cl :common-lisp :ieee-floating-point :prefixed-api :ffi :pentium4 :common :ecl)
:modules ("SB-BSD-SOCKETS" "SOCKETS")
:package (:name "COMMON-LISP-USER" :prompt "CL-USER") :version "2009-12-23")
Compare this with the pristine clisp output
(:emacs-rex
(swank:connection-info)
"COMMON-LISP-USER" t 1)
(:indentation-update
(("with-c-var" . 1)
("with-c-place" . 1)
("with-foreign-string" . 1)
("with-foreign-object" . 1)
("with-defining-c-type" . 1)
("with-name/options" . 1)
("with-window" . 0)
("with-output-to-printer" . 1)
("define-setf-method" . 2)
("letf*" . 1)
("letf" . 1)
("muffle-cerrors" . 0)
("without-global-handlers" . 0)
("with-http-output" . 1)
("with-collect" . 1)
("with-http-input" . 1)
("without-package-lock" . 1)
("appease-cerrors" . 0)
("with-restarts" . 1)
("fcase" . 2)
...))
(:return
(:ok
(:pid 5748 :style nil :lisp-implementation
(:type "CLISP" :name "clisp" :version "2.48 (2009-07-28) (built on stnt067 [192.168.0.1])")
:machine
(:instance "Seth-PC [192.168.2.3]" :type "PC/386" :version "PC/A86")
:features
(:cl-fad cffi-features:x86 cffi-features:windows :cffi :x86 :windows :little-endian :asdf :readline :regexp :syscalls :i18n :loop :compiler :clos :mop :clisp :ansi-cl :common-lisp :lisp=cl ...)
:modules
("SWANK-ARGLISTS" "SWANK-C-P-C" "ASDF" "readline" "regexp" "syscalls" "i18n")
:package
(:name "COMMON-LISP-USER" :prompt "CL-USER")
:version "2009-12-23"))
1)
So Recently ecl had made threading a requirement for windows, and maybe for some other platforms. I dont know if this was the start of the bug as I have not yet gone back in ecl versions and seen which one works. The error on startup DOES NOT occur consistently which is very puzzling. But, anyways, I would like ecl lisp to act like a single threaded lisp as far as slime is concerned so that I can eliminate threading issues generated by the slime lisp code.