conjure icon indicating copy to clipboard operation
conjure copied to clipboard

Common lisp client improvement: Slynk support

Open Dotrar opened this issue 1 year ago • 4 comments

Common lisp client should support the updated, maintained and community supported SLYNK system, rather than the undocumented and outdated SWANK system.

This change replaces swank with slynk in Conjure, as well as some code clean-ups and improvements.

Sly Functions

As a result of these changes, we can now easily support more slyfun (Sly Functions) in a clean and simple manor. Currently only two commands are defined, but this should be easily expanded.

(defn eval-and-grab-output [msg context cb]
   (remote-execute :eval-and-grab-output msg context cb))
(defn connection-info []
   (remote-execute :connection-info))

There's around 100 Slyfunctions that can be incorporated, which can be found by looking for (defslyfun in the slynk codebase.

Documentation

Documentation and reference for sly: https://github.com/joaotavora/sly/blob/master/CONTRIBUTING.md#s-exp-primitives and of course the code itself.

Dotrar avatar Aug 27 '22 09:08 Dotrar

The concept sounds great and I'm find deprecating the old client and renaming/replacing it with this newer one. Sounds like a good change to me.

I'll give the code a read ASAP, I'll be inclined to LGTM and merge but will make sure it works on my system at the very least first.

Olical avatar Aug 31 '22 17:08 Olical

I'll handle those conflicts, but are you happy for me to merge this in it's current state or do you think it needs some more work? If you're using it and happy I'm happy to get it into more user's hands 🙂

Olical avatar Sep 17 '22 12:09 Olical