[Openmcl-devel] Lisp User Interface LUI

Terje Norderhaug terje at in-progress.com
Sun Jan 4 14:49:41 PST 2009

On Jan 2, 2009, at 11:30 AM, Alexander Repenning wrote:
> This may be a good moment to discuss some of the ideas regarding  
> the creation of LUI, the "Lisp User Interface as a cross platform,  
> but Mac first" open source GUI tool.

Yes! Thank you for being a force in moving this forward. Count me in.

> Some fundamental ideas of LUI are:
> - separation of platform specific and independent code: write  
> platform independent code or create specific Cocoa based extensions
> - separation of procedural (Lisp) and declarative (XML syntax but  
> it is really Lisp: X-expressions http://www.cs.colorado.edu/~ralex/ 
> papers/PDF/X-expressions.pdf) GUI information
> - layout managers: interfaces that stretch and don't need, but do  
> allow, hardcoded coordinates/sizes.

I favor an approach in which the user interface to a high degree  
automatically adapt to each platform. That is, the goal is NOT to  
create user interfaces that looks and works similar on the different  
platforms, but instead adheres to their different HUI conventions and  
usability practices. Case in point, I once hoped CLIM would be a good  
fit for adaptive user interfaces, but got disappointed.

Alexander is right in proposing external, XML based user interface  
declarations that are platform and programming language independent.  
It facilitates that non-LISP'ers design or modify the user interface  
without requiring involvement by the LISP programmer. Way to go!  
These files could even be available for optional customization by the  
end user, for example, by placing them in the application bundle and  
loading them at runtime.

Some other XML-based user interface description formats:

* XUL - https://developer.mozilla.org/en/The_Joy_of_XUL
* XAML - http://en.wikipedia.org/wiki/ 
* UIML - http://www.uiml.org/
* UIDL - http://www.usixml.org/
* XFORMS - http://www.w3.org/TR/xforms11/

See also:


-- Terje Norderhaug

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20090104/8543a655/attachment.htm>

More information about the Openmcl-devel mailing list