Tomas Hlavaty <> writes:

Hi Tomas,
>> so thats the solution - I have a local installation, I set the 4 links
>> to /usr/bin/ and /usr/share/ as described in INSTALL - but apparently
>> only /usr/share/picolisp is the one that works.  I have no idea why.
> how did you install your local picolisp?  Did you "cd src; make"?  Can
> you find the bin/picolisp executable file after that?

I'm not quite sure anymore, but I think I just followed the
instructions. I have to check the links I set. 

>> after changing all calls to 'pil' to '/usr/share/picolisp/pil' and the
>> call to swank-picolisp to '/usr/share/picolisp/lib/swank-picolisp'
>> things worked - more or less.  The connection to slime worked, I get a
>> slime-repl with a pil> prompt, and calculations like (+ 3 4 ) work -
>> but everything is extremely slow, and after each keystroke I get
>> 'wrong number of arguments' errors ...
> OK.  Now how exactly did you set up your slime?  I think Henrik had a
> similar problem because he was using some slime contribs that
> swank-picolisp doesn't support.  If you start with those contribs I sent
> in the previous email, it should work.

I actually had two of your four contribs, I now copied your contribs,
but no change yet. 

> The problem you are seeing is that when you move your cursor, emacs
> talks to picolisp to find information about symbols your cursor points
> at, e.g. if you write
>    pil> (+ 1 2)
> and then place your cursor above +, slime tries to display information
> about +.  I use emacs autodoc and in this case, I see that the symbol
> plus is a built-in function, its address and arguments.

> It is slow for you because something about this autodoc stuff doesn't
> work for you.

yes, thats what it looks like - at least partly a problem with autodoc.
It works only with the native functions anyway, I can lookup +, but not
pp. and when I do (pp 'insert), 'insert' is returned, when I do (pp
insert) the connection breaks.  

>> but anyway - it works, somehow, finally.  I should become a software-
>> and usability-tester, I have what it takes ;)
> Great;-)

I would wish I had less talent to figure out all possible complications
when attempting something like a slime install ;)

> You could have a look at the inferior-lisp buffer and you'll see some
> messages sent forth and back between emacs and picolisp.  It should give
> you an idea what the problem is.

looks like this:
there is still a "/usr/share/picolisp/p" in there, I don't know where
this comes from. 

(prog (load "/usr/share/picolisp/lib/swank-picolisp/swank-picolisp.l") 
(swank-start "/tmp/slime.2969"))
: (prog (load "/usr/share/picolisp/lib/swank-picolisp/swank-picolisp.l") 
(swank-start "/tmp/slime.2969"))
## Listening on port 47344
(:emacs-rex (swank:connection-info) "COMMON-LISP-USER" t 1)
0001A2(:return (:ok (:pid 3210 :style nil :encoding (:coding-system "utf-8" 
:external-format "utf-8") :lisp-implementation (:type "PicoLisp32" :name 
"PicoLisp32" :version "3.0.8" :program "/usr/share/picolisp/p") :machine 
(:instance "tj-desktop" :type "i686" :version "AMD Athlon(tm) 64 X2 Dual Core 
Processor 5000+") :features (:dummy) :modules ("module1" "module2") :package 
(:name "PIL1" :prompt "pil1") :version nil)) 1)
(:emacs-rex (swank:swank-require '((swank-asdf swank-package-fu 
swank-presentations swank-fuzzy swank-fancy-inspector swank-c-p-c 
swank-arglists))) "COMMON-LISP-USER" t 2)
000015(:return (:ok NIL) 2)
(:emacs-rex (swank:create-repl nil) "COMMON-LISP-USER" t 3)
00001F(:return (:ok ("PIL" "pil")) 3)
(:emacs-rex (swank:autodoc '(("+" swank::%cursor-marker%)) :print-right-margin 
184) "PIL" :repl-thread 4)
00002F(:return (:ok "+ 67317800 ('num ..) -> num") 4)
(:emacs-rex (swank:autodoc '(("+" NIL swank::%cursor-marker%)) 
:print-right-margin 184) "PIL" :repl-thread 5)
00002F(:return (:ok "+ 67317800 ('num ..) -> num") 5)
(:emacs-rex (swank:autodoc '(("+" "3" NIL swank::%cursor-marker%)) 
:print-right-margin 184) "PIL" :repl-thread 6)
00002F(:return (:ok "+ 67317800 ('num ..) -> num") 6)
(:emacs-rex (swank:autodoc '(("+" "3" "4" NIL swank::%cursor-marker%)) 
:print-right-margin 184) "PIL" :repl-thread 7)
00002F(:return (:ok "+ 67317800 ('num ..) -> num") 7)



Reply via email to