lisp2wish is a simple interface to the Tk GUI toolkit. The interface starts the Tcl/Tk interpreter wish
from Lisp as a subprocess, with which it communicates asynchronously by sending Tcl commands and receiving responses.
lisp2wish was developed by Matthias Lindner and the source code has apparently not been changed since 1995. Although the system works with Allegro CL, CLISP, KCL and Lucid, it should be straightforward to port it to other Common Lisp implementations. Only a few functions that start a subprocess and open I/O streams with it need to be adapted.
A version that works for CLISP, SBCL and CMUCL can be found here: http://www.riise-data.net/lisp2wish-2004-01-31.tgz. This file also has an asdf system file and documentation how to invoke it for the three Common Lisp implementations above.