Lessico IT › Programmazione › CLX

CLX

Programmazione Svenska → Aggiornato: 2026-10-08
Altre info
Creatore
Texas Instruments e MIT
Anno
Tipo
Libreria
Licenza
MIT
Codice sorgente
github.com/sharplispers/clx

L'interfaccia di Common Lisp verso X: un'implementazione completa del protocollo X in puro Lisp, senza Xlib sotto, scritta quando X11 era nuovo e le Lisp machine stavano perdendo terreno.

CLX nacque da una collaborazione tra Texas Instruments e MIT nel 1987–88, con LaMott Oren e l'ideatore di X, Robert Scheifler, tra gli autori, e fu distribuita con le versioni di X11 come codice contribuito. Non è un involucro attorno a qualcos'altro. Mentre la maggior parte dei linguaggi parla con X tramite Xlib, CLX apre un socket verso il server e scrive da sé i byte del protocollo: finestre, contesti grafici ed eventi sono oggetti Lisp, ogni richiesta è definita con una macro che genera sia la serializzazione sia la decodifica della risposta, e gli eventi si gestiscono con event-case. È la stessa idea che XCB avrebbe realizzato in C quindici anni dopo, con la differenza che Lisp aveva fin dall'inizio le macro per farlo.

Il bisogno era concreto. Le macchine Explorer di Texas Instruments e quelle di Symbolics avevano sistemi a finestre propri, ma Lisp cominciava a girare su comuni workstation Unix, dove c'era X. CLX divenne il fondamento delle implementazioni di CLIM, del toolkit Garnet della CMU e di StumpWM, un window manager scritto interamente in Common Lisp. Il codice è tuttora mantenuto, oggi sotto sharplispers su GitHub, e funziona con SBCL, CCL e le altre implementazioni sopravvissute. Ha vissuto più a lungo sia delle Lisp machine sia della maggior parte dei programmi che lo usarono per primi.

← Torna al lessico