Is someone here familiar with the differences between SLIME ...
I was using SLIME a lot when working with CL, but didn't look deeply into the implementation. SLIME's architecture is basically the option 3 I listed before (local (socket-) server, in SLIME that's SWANK). And there is already SLIME support (at least) for Kawa and MIT-Scheme, where I didn't get the Kawa-part running. Even then I think that CL has much more focus on the idea of image-based development in a long running session and it has deep technical support for that (whereas Scheme with it's focus on simplicity does not have this focus; e.g. Per Bothner explicitly mentions somewhere for Kawa that one cannot expected that re-evaluating the same defines will always work within the same Kawa REPL session). So as much as I admire SLIME, I'm not sure whether the effort to use it for integration for many Scheme's will be worth the effort - but again this depends from the total scope we plan to support. Still SLIME would be a perfect place to check for interesting features and maybe it's possible to re-use parts of the Emacs-side of SLIME. My idea for next steps would be:
... and Geiser?
I also checked Geiser, but since I'm using some Schemes which are not supported by Geiser and since it quite heavily impacts your Emacs setup, I'm not using it. I recently had a post with some simply Scheme-helpers I'm using for different Schemes - mostly documentation access and minimal REPL integration.