* Sampo Vuori [2008-12-09 08:30+0100] writes:
Hi,
It's great to see some support for kawa in slime.. I wanted to give it a go today but ran in a few showstoppers. With the latest kawa compiler I ran into an error which might be a compiler bug, when issuing the compile command: (compile-file "swank-kawa.scm" "swank-kawa") I get a stack trace:
java.lang.Error: popType called with empty stack
Yes, this looks like a compiler bug. But it's probably hard to create a small test case for this because the code in question is generated by a pattern matching macro which results in lots of nested IFs.
After going back a few versions (to revision 6150) the swank-kawa compiles but I get the following error when starting slime in emacs:
#|kawa:2|# connection: Socket[addr=/127.0.0.1,port=50431,localport=50430] listener: Thread[swank-listener,5,main] 1867624887 chan@11711970 #<environment user> attaching: -n 10332 20
Apparently the process id of the JVM was parsed incorrectly. On Linux this looks like: attaching: 3649 20
There is a function getpid in swank-kawa.scm which invokes "echo -n $PPID". The -n is probably a GNU extension. Luckily, it's not actually needed. So, you can delete the -n and try to compile it again.
I think that the Clojure guys use some the java.lang.management classes to get the pid. Maybe that would be more portable.
Helmut.