Tomas Hlavaty <t...@logand.com> writes:

Hi Henrik, Hi Tomas,
thanks for your help so far. 

I now have slime and sbcl installed and working, and I downloaded
swank-picolisp and copied your configuration except the picolisp command 

,-------------------
| usr/bin/picolisp/p
`-------------------

I have a problem there, I tried

,--------------------------------
| home/tj1/bin/picolisp/pil       |
| home/tj1/bin/picolisp/plmod     |
| home/tj1/bin/picolisp/bin/pil   |
| home/tj1/bin/picolisp/bin/plmod |
| home/tj1/bin/picolisp/bin/psh                             |
`--------------------------------

but no matter which one  I use, and I always get an error, e.g. 

,--------------------------------------------------------------
| (prog (load                                                  
| "/home/tj1/bin/picolisp/lib/swank-picolisp/swank-picolisp.l")
| (swank-start "/tmp/slime.20688"))                            
|                                                              
| Can't exec program:                                          
| /home/tj1/bin/picolisp/bin/psh                               
`--------------------------------------------------------------

Now I'm a bit confused - which command should I use, and is that related
to file permissions (they seem alright to me) or something else?
Do you use recent versions of picolisp?


here is the backtrace I get when I try to open a test2.l file:

,-------------------------------------------------------------------------
| Debugger entered--Lisp error: (error "Process inferior-lisp not         
| running") process-send-string(#<process inferior-lisp> "(prog (load     
| \"/home/tj1/bin/picolisp/lib/swank-picolisp/swank-picolisp.l\")         
| (swank-start \"/tmp/slime.20688\"))\n") (let ((str ...)) (goto-char     
| (process-mark process)) (insert-before-markers str) (process-send-string
| process str)) (save-current-buffer (set-buffer (process-buffer process))
| (make-local-variable (quote slime-inferior-lisp-args)) (setq            
| slime-inferior-lisp-args args) (let (...) (goto-char ...)               
| (insert-before-markers str) (process-send-string process str)))         
| (with-current-buffer (process-buffer process) (make-local-variable      
| (quote slime-inferior-lisp-args)) (setq slime-inferior-lisp-args args)  
| (let (...) (goto-char ...) (insert-before-markers str)                  
| (process-send-string process str))) (let* ((--cl-rest-- args)           
| (coding-system ...) (init ...)) (with-current-buffer (process-buffer    
| process) (make-local-variable ...) (setq slime-inferior-lisp-args args) 
| (let ... ... ... ...))) (progn (let* (... ... ...) (with-current-buffer 
| ... ... ... ...))) (destructuring-bind (&key coding-system init         
| &allow-other-keys) args (with-current-buffer (process-buffer process)   
| (make-local-variable ...) (setq slime-inferior-lisp-args args) (let ... 
| ... ... ...))) slime-start-swank-server(#<process inferior-lisp>        
| (:program "/home/tj1/bin/picolisp/bin/psh" :program-args nil :buffer    
| "*inferior-lisp*" :coding-system iso-latin-1-unix :init                 
| slime-init-picolisp :name picolisp :init-function nil :env nil))        
| slime-inferior-connect(#<process inferior-lisp> (:program               
| "/home/tj1/bin/picolisp/bin/psh" :program-args nil :buffer              
| "*inferior-lisp*" :coding-system iso-latin-1-unix :init                 
| slime-init-picolisp :name picolisp :init-function nil :env nil)) (let   
| ((proc ...)) (slime-inferior-connect proc args) (pop-to-buffer          
| (process-buffer proc))) (let ((args ...)) (slime-check-coding-system    
| coding-system) (when (slime-bytecode-stale-p)                           
| (slime-urge-bytecode-recompile)) (let (...) (slime-inferior-connect proc
| args) (pop-to-buffer ...))) (catch (quote --cl-block-slime-start--) (let
| (...) (slime-check-coding-system coding-system) (when ... ...) (let ... 
| ... ...))) (cl-block-wrapper (catch (quote --cl-block-slime-start--)    
| (let ... ... ... ...))) (block slime-start (let (...)                   
| (slime-check-coding-system coding-system) (when ... ...) (let ... ...   
| ...))) (let* ((program ...) (program-args ...) (directory ...)          
| (coding-system ...) (init ...) (name ...) (buffer ...) (init-function   
| ...) (env ...)) (let (...) (while --cl-keys-- ...)) (block slime-start  
| (let ... ... ... ...))) slime-start(:name picolisp :program             
| "/home/tj1/bin/picolisp/bin/psh" :program-args nil :init                
| slime-init-picolisp) apply(slime-start (:name picolisp :program         
| "/home/tj1/bin/picolisp/bin/psh" :program-args nil :init                
| slime-init-picolisp)) slime-start*((:name picolisp :program             
| "/home/tj1/bin/picolisp/bin/psh" :program-args nil :init                
| slime-init-picolisp)) (let ((inferior-lisp-program ...)                 
| (slime-net-coding-system ...)) (slime-start* (cond ... ...))) slime()   
| (save-excursion (slime)) (if (slime-connected-p) nil (save-excursion    
| (slime))) (unless (slime-connected-p) (save-excursion (slime))) (lambda 
| nil (unless (slime-connected-p) (save-excursion ...)))()                
| run-hooks(slime-mode-hook slime-mode-on-hook) (let ((last-message ...)) 
| (setq slime-mode (cond ... ... ...)) (slime-setup-command-hooks) (setq  
| slime-modeline-string (slime-modeline-string)) (run-hooks (quote        
| slime-mode-hook) (if slime-mode ... ...)) (if (called-interactively-p)  
| (progn nil ...))) slime-mode(1) (lambda nil (tsm-mode) (define-key      
| picolisp-mode-map (kbd "C-M-r") (quote picolisp-jump)) (slime-mode 1))()
| run-hooks(picolisp-mode-hook) apply(run-hooks picolisp-mode-hook)       
| run-mode-hooks(picolisp-mode-hook) picolisp-mode()                      
| set-auto-mode-0(picolisp-mode nil) set-auto-mode() normal-mode(t)       
| after-find-file(nil t) find-file-noselect-1(#<buffer test2.l>           
| "~/lispProjects/picolisp/test2.l" nil nil                               
| "~/Dropbox/lispProjects/picolisp/test2.l" (14680230 2049))              
| find-file-noselect("/home/tj1/lispProjects/picolisp/test2.l" nil nil)   
| ido-file-internal(raise-frame) ido-find-file()                          
| call-interactively(ido-find-file nil nil)                               
`-------------------------------------------------------------------------

>>
>> Is that still valid, or should it rather be 'pil ore 'plmod now? 
>> ,-----------------------------------------------------------------------
>> | (setq slime-lisp-implementations                                      
>> |       `((picolisp ("/usr/bin/picolisp/p") :init slime-init-picolisp)))
>> `-----------------------------------------------------------------------
>
> Yes, I think the way picolisp is launched has changed recently, so you
> need the use the correct shell script, likely pil.  Please let me know
> it it worked for you.  You should get a repl and then type (+ 1 2) and
> get the result.  If you move your cursor around, you should see function
> arguments in the message buffer and if you do M-. and M-, then you
> should be jumping around the sources.
>

cheers
-- 
Thorsten

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to