Search code examples
emacslispschemecommon-lispslime

What is the closest thing to Slime for Scheme?


I do most of my development in Common Lisp, but there are some moments when I want to switch to Scheme (while reading Lisp in Small Pieces, when I want to play with continuations, or when I want to do some scripting in Gauche, for example). In such situations, my main source of discomfort is that I don't have Slime (yes, you may call me an addict).

What is Scheme's closest counterpart to Slime? Specifically, I am most interested in:

  • Emacs integration (this point is obvious ;))
  • Decent tab completion (ideally, c-w-c-c TAB should expand to call-with-current-continuation). It may be even symbol-table based (ie. it doesn't have to notice a function I defined in a let at once).
  • Function argument hints in the minibuffer (if I have typed (map |) (cursor position is indicated by |)), I'd like to see (map predicate . lists) in the minibuffer
  • Sending forms to the interpreter
  • Integration with a debugger.

I have ordered the features by descending importance.

My Scheme implementations of choice are:

  • MzScheme
  • Ikarus
  • Gauche
  • Bigloo
  • Chicken

It would be great if it worked at least with them.


Solution

  • You also might consider Scheme Complete:

    http://www.emacswiki.org/cgi-bin/wiki/SchemeComplete

    It basically provides tab-completion.