Google Groups Home
Help | Sign in
Message from discussion History of CLIM?
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
Christopher C. Stacy  
View profile
 More options Jan 31 2005, 12:22 am
Newsgroups: comp.lang.lisp
From: cst...@news.dtpq.com (Christopher C. Stacy)
Date: Mon, 31 Jan 2005 05:22:25 GMT
Local: Mon, Jan 31 2005 12:22 am
Subject: Re: History of CLIM?

Peter Seibel <pe...@javamonkey.com> writes:
> Can someone point me to a history of CLIM? I gather that it was
> somewhat of a joint venture of different Lisp vendors from the days
> when "Lisp vendors" included folks like Symbolics. Was it based on the
> Lisp Machine's UI frameworks. Or was it an all new thing.

Symbolics' Dynamic Windows system was the forerunner of CLIM.
DW had presentation types, framework stuff, commands and
accelerators, incremental redisplay, output recording, graphing,
and most of the other stuff that you're familiar with in CLIM.
The macros and functions (eg. DEFINE-PRESENTATION-TYPE, ACCEPT,
PRESENT, etc.) were almost exactly the same.

CLIM was a cleanup and a complete re-implementation of DW,
with a lot of simplifications and improvements to the API
and the graphics model. The CLIM extensibility protocols
were designed to be portable, and more comprehensible,
than in DW.

CLIM was an attempt to get the vendors together on a portable,
powerful graphics system.  One of its key features was that
where Dynamic Windows only ran on the Lisp Machine's "sheets"
window system, CLIM would run on top of a portable abstraction
layer called "Silica" (although I think in the end, it didn't
quite wind up using Silica as originally envisioned).

I don't think CLIM and Dynamic Windows really shared any code.

A bunch of people at Symbolics worked on creating DW and CLIM.
I don't remember who the Xerox guys were. There are at least
two CLIM hackers who regularly appear on this newsgroup.  
They can tell you more about the technical differences,
and probably about the vendor politics and CLIM history.

When I was writing typical presentation-type based programs
just on the Lisp Machine, I never really noticed any huge
differences between CLIM and Dynamic Windows.  (But I think
for a while, at least, it was easier to debug DW programs than
CLIM programs, due to the way it was integrated in Genera.)

There was also a system modeled after Dynamic Windows (DW) called
Express Windows.  EW was a simplified version of the DW functionality
and API, running under X Windows (CLX) on Franz and Lucid. It was
whippeed up by a two-man consulting comapny called Liszt Programming
(which was Andy Ressler and Mike Komichak).

> I also gather that it never really took off (though it now seems to be
> experiencing a bit of a renaissance thanks to the McCLIM project).
> Were there any major CLIM-based applications?

Symbolics used Dynamic Windows and CLIM a lot, for Genera itself
and in the layered products, as well as many internal tools.
Lots of users wrote DW (and later, CLIM) applications.  

But as I recall, CLIM became mature after "AI Winter" set in, and
it tracked the popularity of Lisp in general.  I don't think this
was about CLIM "not taking off" as much as Lisp becoming unpopular.
I think a bunch of work was done at Harlequin, post-Symbolics.

In the modern era, I would ask this question of Franz in particular.

Eugene Cicarelli's thesis is often cited in connection with DW.
"Presentation Based User Interfaces",  MIT AI Lab, AI-TR-794, 1984.
His system was called PSBase, and had presentations, styles,
gestures, recognizers, etc.  This was on the Lisp Machine.
Gene was an EMACS hacker and I think he was largely inspired
by the direct and planned manipulation aspects of subsystems
like DIRED, the Xerox desktop metaphor (eg. moving a file
into the trashcan), and by various people's work on object
modelling in AI and in (eg. Leiberman's) programming systems.

Chris


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2008 Google