The use of multimethods and method combination in a CLOS based window interface

H. Muller, J. Rose, J. Kempf, T. Stansbury
1989 Conference proceedings on Object-oriented programming systems, languages and applications - OOPSLA '89  
Solo is a portable window interface written in the Common Lisp Object System (CLOS) object-oriented programming language. Solo provides a virtual window machine which is targeted to a host window system by implementing a set of host window system specific classes and methods for Solo's host window system driver protocol. The interface presented by Solo to an application insulates it from differences in the host window system, facilitating application portability. Solo distinguishes itself from
more » ... ther object-oriented window systems by exploiting certain features of CLOS. CLOS method combination simplifies initialization of windows while preserving easy extensibility of the basic classes. Generic dispatch on multiple arguments, a feature unique to CLOS, allows a simpler and more flexible input event dispatching protocol. A powerful event description language simplifies the specification of keyboard and mouse events. A prototype implementation runs on the server based X11 and NeWS host systems, and on the frame buffer based Lucid Window Toolkit, October 1-6, 1989 OOPSLA '89 Proceedings 239
doi:10.1145/74877.74903 dblp:conf/oopsla/MullerRKS89 fatcat:r7guay75wfcpdmiuaxrohcnkm4