<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>XMlisp including the Lisp User interface (LUI) already has layout managers. Here is the Apple currency converter example:</div><div><br></div><div><a href="http://code.google.com/p/xmlisp/source/browse/trunk/XMLisp/sources/XLUI/examples/2D/Currency%20Converter.lisp">http://code.google.com/p/xmlisp/source/browse/trunk/XMLisp/sources/XLUI/examples/2D/Currency%20Converter.lisp</a></div><div><br></div><div>Same thing almost works now in Windows as well</div><div><br></div><div>LUI is still missing the Cocoa implementation of some classes such as check boxes. Examples are provided. Let me know if you like to help. This could be a way to create cross platform gui tools.</div><div><br></div><div>and if your biggest problem is the XML part of XMLisp let me just say you don't have to use it. But let me also share our experience with teaching students Lisp. Programming in Lisp is actually a problem that can be overcome. The idea of using s-expressions to represent guis, in contrast, is not something we ever have found a way to sell to students. Expressions such as</div><div><br></div><div>(make-gui 'window '(:view ... )) </div><div><br></div><div>may look really great to experienced Lisp user but are essentially hell to everybody else and confirm just about all the stereotypes people have about Lisp because many of these expressions are ill defined, are hard to produce because of lack of documentation. Do I need a quote or a ":" here and there...</div><div><br></div><div>Alex</div><div><br></div><br><div><div>On Sep 7, 2009, at 1:14 PM, Ron Garret wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Actually, I've found that Cocoa is not so bad once you get used to it.  I think I could probably build something IFT-like in a couple of weeks, which means someone who actually knew what they were doing could probably crank it out in a couple of days.</div><br class="Apple-interchange-newline"></blockquote></div><br><div apple-content-edited="true"> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Prof. Alexander Repenning</font></p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><br class="khtml-block-placeholder"></p><p style="margin: 0.0px 0.0px 0.0px 0.0px">University of Colorado</p><p style="margin: 0.0px 0.0px 0.0px 0.0px">Computer Science Department</p><p style="margin: 0.0px 0.0px 0.0px 0.0px">Boulder, CO 80309-430</p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><br class="khtml-block-placeholder"></p><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">vCard: <a href="http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf">http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf</a></font></p><br class="Apple-interchange-newline"></span></span></span></div></span> </div><br></body></html>