heh, I managed to resurrect this Sguenz (embeddable linux-hosted lisp sequencer) - it succumbed to the ‘lisp curse’ in a big way… couldn’t figure out how to use common lisp’s ‘portable’ socket library because the documentation & examples are dreadful. So of course instead of figuring it out, I decided not to use OSC & successfully rolled my own raw serial driver but only got 1/2 way towards a useful toplevel application before running out of steam. Could’ve been worse, I could’ve decided serialosc itself needed to be rewritten in common lisp along with every other piece of software ever…
anyway, finally figured out the tricks to use OSC portably from sbcl/ccl, documented my work, sent a pull to maintainer of the OSC lib & finally added bare minimum serialosc support to cl-monome (lisp-native libmonome-alike). glad I resurrected the app itself - there are some pretty neat aspects to it…
Onward toward a system for inter-process focus-swapping! (maybe even finish & publish my app…)
EDIT:
the desired focus-stealing behaviour is simple to implement (now done in both pd_grid & sguenz), because serialosc actually notifies the last focussed client when someone else steals focus. thanks serialosc!