@screwtape I wish there was a port of CLIM for Scheme that I could use for my Emacs clone, but I don’t know if any of the Scheme implementations of the Meta Object Protocol (MOP) are comprehensive enough to support CLIM. The same is true of the Emacs MOP, which is some combination of cl-lib and EIEIO, I don’t think you could implement CLIM with just that.
Also, every Scheme MOP is platform-specific. GOOPS is only for Guile, COOPS is only for Chicken, SOS Is only for MIT Scheme.
The Racket GUI library is quite good, but it relies too heavily on Racket’s macro system to make it very portable to other Schemes.
For myself, I was thinking of rewriting a lightweight JavaScript React-like framework called Van.js to Scheme and use it to implement a higher-level interface around an existing GUI framework like Gtk. The nice thing about Gtk is that the FFI bindings are automated throught GObject Introspection, and it has been ported to all major operating systems.
But I think a better long-term solution for my Emacs clone would just be to implement the full MOP and then CLIM in Scheme.
@slgr