<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Jan 2, 2009, at 11:30 AM, Alexander Repenning wrote:</div><blockquote type="cite"><div>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.</div></blockquote><div><br></div><div>Yes! Thank you for being a force in moving this forward. Count me in.</div><br><blockquote type="cite"><div><span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">Some fundamental ideas of LUI are:</span></div><div>- separation of platform specific and independent code: write platform independent code or create specific Cocoa based extensions </div><div>- separation of procedural (Lisp) and declarative (XML syntax but it is really Lisp: X-expressions <a href="http://www.cs.colorado.edu/~ralex/papers/PDF/X-expressions.pdf)">http://www.cs.colorado.edu/~ralex/papers/PDF/X-expressions.pdf)</a> GUI information</div><div>- layout managers: interfaces that stretch and don't need, but do allow, hardcoded coordinates/sizes.</div></blockquote><div><br></div>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.</div><div><br></div><div>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.</div><div><br></div><div>Some other XML-based user interface description formats:</div><div><br></div><div>* XUL - <a href="https://developer.mozilla.org/en/The_Joy_of_XUL">https://developer.mozilla.org/en/The_Joy_of_XUL</a></div><div>* XAML - <a href="http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language">http://en.wikipedia.org/wiki/Extensible_Application_Markup_Language</a></div><div>* UIML - <a href="http://www.uiml.org">http://www.uiml.org</a>/</div><div>* UIDL - <a href="http://www.usixml.org">http://www.usixml.org</a>/</div><div>* XFORMS - <a href="http://www.w3.org/TR/xforms11/">http://www.w3.org/TR/xforms11/</a></div><div><br></div><div>See also:</div><div><br></div><div><a href="http://en.wikipedia.org/wiki/Comparison_of_user_interface_markup_languages">http://en.wikipedia.org/wiki/Comparison_of_user_interface_markup_languages</a></div><div><br></div><div>-- Terje Norderhaug</div><div><br></div><div><br></div><div><br></div></body></html>