IT-словарь › Программирование › CLX

CLX

Программирование Svenska → Обновлено: 2026-10-18
Подробнее
Автор
Texas Instruments и MIT
Год
Тип
Библиотека
Лицензия
MIT
Исходный код
github.com/sharplispers/clx

Интерфейс Common Lisp к X: полная реализация протокола X на чистом Lisp, без Xlib под капотом, написанная, когда X11 был нов, а Lisp-машины проигрывали.

CLX появился в результате сотрудничества Texas Instruments и MIT в 1987–88 годах; среди авторов были ЛаМотт Орен и создатель X Роберт Шейфлер, и библиотека поставлялась с релизами X11 как contributed-код. Это не обёртка над чем-либо. Там, где большинство языков общаются с X через Xlib, CLX открывает сокет к серверу и сам записывает байты протокола: окна, графические контексты и события — объекты Lisp, каждый запрос описан макросом, порождающим и сериализацию, и разбор ответа, а события обрабатываются через event-case. Та же идея, которую XCB воплотила на C пятнадцатью годами позже, с тем отличием, что в Lisp макросы для этого были с самого начала.

Нужда была вполне конкретной. У Explorer от Texas Instruments и машин Symbolics были собственные оконные системы, но Lisp начинал работать на обычных рабочих станциях Unix, где был X. CLX стал основой для реализаций CLIM, для тулкита Garnet из CMU и для StumpWM — оконного менеджера, целиком написанного на Common Lisp. Код до сих пор поддерживается, теперь под sharplispers на GitHub, и работает на SBCL, CCL и других уцелевших реализациях. Он пережил и Lisp-машины, и большинство программ, которые впервые им пользовались.

← Назад к словарю