Emacs – Slime – SBCL Setup Redux

After using this for a while i’ve just realised that all output is going to the inferior-lisp buffer instead of the REPL.The solution is to go into the slime directory, open swank.lisp and find the lines:

(defvar *globally-redirect-io* nil
  “When non-nil globally redirect all standard streams to Emacs.”)

and change them to

(defvar *globally-redirect-io* t
  “When non-nil globally redirect all standard streams to Emacs.”)

Which appears to do the trick.

(Crosses fingers hopefully)



Emacs – Slime – SBCL Setup

I’ve faffed around for ages looking for the causes of these problems, and I seem final to have found the solution. On both of my windows boxes I had upgraded SBCL to 1.0.22, Emacs to the latest EmacsW32, and Slime to the most recent but this setup was not working as I wanted, after doing M-x slime, I was not getting a REPL, just some output in the *inferior-lisp* buffer telling me I was connected.To get a REPL to display when we start slime it is necessary to change the line in our .emacs file from:



(slime-setup ‘(slime-fancy slime-asdf slime-banner))

I’m not sure which one has the desired effect out of slime-fancy and slime-asdf, but slime-banner is only required to display the startup animation.

Problem number 2 was that once I had my REPL when I hit an error, the Backtrace started, but Aborting did not drop me back into the REPL, instead, it appeared to hang. To work around this requires an alteration to swank.lisp in the slime folder. We need to alter the line in the sldb-loop function (around line 2496 in my version):

(wait-for-event `(:sldb-return ,(1+ level)) t)

changing it to:

(poll-for-event `(:sldb-return ,(1+ level))

This isn’t apparently a solution, just a workaround according to the slime-devel mailing list.



One Assignment Down

Hooray! I’ve finished one assignment (the website/automated telephone one for HCI), two more to go.

I did some concept mapping last night but my heart wasn’t really in it. I’ll carry on tonight I think and see how far I get. Then I actually have to go to my HCI lecture tomorrow, which I don’t look forward to.

Moodle day tomorrow, I’ve got two more teachers’ classes to add (I need to write a script to re-enable their passwords if they ae disabled and in that class), then it’s time to work out whether I should put the data from SIMS.net into a MySQL Database or store it as a flat file.

Then I really have to get cracking on my project work on Thursday (if I can’t sort out the bizarre rotation problem then I’ll have to cut down to just cardinal directions). I think I need to compile a static version of Qt to let me do the project. Once I’ve cracked the movement issues I’l be able to reuse it in the other one.

This afternoon I’ve updated some of the components of LispBox 0.7 to newer ones. Emacs (I think) CLisp 2.44 SLIME (24-4-08 edition) I would also like to try and use SBCL as my Lisp in here but I can’t quite get it working. I don’t want to lose my other emacs settings so I need to work out how to reset the HOME variable so that it points to a local .emacs file. I’ll post some instructions if I manage to work out what I’m doing.

I’ve agreed to take part in the Manchester to Blackpool Charity Bike Ride in July (how stupid am I) for Christies. It’s only 60 miles so I’ve spent the last week puffing and panting up hills, luckily I’ve got another 2 1/2 months until we actually do it so I should manage without keeling over dead of a heart-attack. We’re going to be riding as Team Janice in memory of Janice who died last May (23d I think), I’ll try and add a static page with training to this site so I can keep track of how much I’m doing (or not). Off now.

(Post Script: Page added for training log )

It’s My Birthday!

It’s my birthday today, but we’re not doing much to celebrate it as we’ve both got so much work on at the moment.

I’ve finished my website, done a very shoddy write-up and now just need to do the script for the automated telephone service.

Next I’ve got to do the lovely concept maps for the course. It’s tempting to leave out one or two lectures and see if he notices. I have decided to spend tonight and tomorrow doing as many as possible so that I can concentrate on doing as much of my Interim Research Report as possible at the weekend.

I have managed to write a functioning script in CLisp to massage the SIMS data into shape, but it’s littered with globals so I need to refactor it. I’m planning on spending some more time looking at SIMS data using CLisp for scripting.

Plus once Year 11 have gone I’ll have a look at writing a version of DT-Monitor in CLisp using a web framework if I can find one, and PHP with Zend again if not.