Monday 29 November 2010

DUIM (and CLIM) links -- for those that are interested

Since I've been asked to provide a few links to explain what on earth DUIM is, our usual programming is suspended whilst I dig few some of my references.

There's not a huge amount of information out there on DUIM or its predecessor, CLIM. I guess they were niche even at the height of their popularity and like many things CL (and Dylan) related the ratings in the popularity stakes are getting worse.

That said, there is some documentation. For DUIM the repository of all knowledge is at the OpenDylan site.

In particular, the DUIM user guide and reference guides are useful. There's also some information on the Dylan Wiki.

DUIM was originally created by a now defunct company called Functional Developer. The DUIM repository at OpenDylan.org is based on their code.

The code I've been working on is as direct a translation from the Dylan that I have been able to manage as it was about 2-3 years ago (the OpenDylan devs have also been hacking on DUIM in that time). I'd say in general the CL implementation mirrors the Dylan implementation (as was) very well. The syntax is probably 95% what you'd expect from reading the Dylan docs, assuming a cursory understanding of Dylan syntax and a similar understanding of CL syntax. A few of the macros are slightly different (for example, many of the CL macros use keywords for "literals" in macros (such as :PANE in frame-defining forms - the Dylan uses just PANE), and CLIM's MAKE-PANE has returned since CL doesn't implement dispatching the same way Dylan does (Dylan's method is superior in my humble opinion). Also the Dylan "xxx-setter" methods are replaced with CL "(setf xxx)" methods).

For those interested in CLIM, there's a collection of links about it on cliki.

No comments:

Post a Comment

Followers