|
|
|
|
|
by p_l
907 days ago
|
|
This is a fundamental misunderstanding of what was the a tual problem with sharing code, at least with Lisp systems (can't speak of then commercial Smalltalks as I have no experience with those). The lisp environments were fragmented, so sharing code between different systems was a problem - even assuming Common Lisp, a group working in facility A might be using Symbolics machines and depend on software packages like Dynamic Windows and Symbolics specific network stack, which mean portable core logic would be missing various usability elements like GUI when ported to facility B running CMU CL with Motif on Unix, or facility C which had TI Explorers. Another issue was that the machines were powerful enough you didn't have to contact others just to get running. Working in C meant you either spent a lot of time filling in basic functionalities, or you collaborated with others. This was compounded of course by C and Unix being effectively free for huge chunk of zeitgeist-creating masses in academia. |
|
That was the reason for specification&development of the "Common Lisp Interface Manager" (CLIM), which was a portable reimplementation of Dynamic Windows to Common Lisp and CLOS. It supported to build the presentation-based user interfaces of Dynamic Windows. Implementations of CLIM were available for Lisp on Genera, Unix, Mac and Windows. CLIM 2 then was an attempt to blend better into the other GUIs.
https://github.com/franzinc/clim2
https://mcclim.common-lisp.dev (McCLIM is an independent reimplementation of the CLIM 2 "standard".
TI came up with a UIMS (User Interface Management System) based on Common Lisp + CLOS + CLX , called CLUE (Common Lisp User Environment) and CLIO. That one was then also used by LispWorks for its GUI and IDE as the low-level UIMS system. LispWorks later replaced CLUE with their own UIMS, called CAPI, which supported/s Motif (now obsolete), Gtk, Windows and macOS.
https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/...