
Peter Achten wrote: (that Sengan said:)
"...the library designers never used their toolkits in larger applications..." True: I didn't, but other people have. Check out the CleanIDE (by Diederik van Arkel): http://www.cs.kun.nl/~clean/About_Clean/body_the_clean_ide/body_the_clean_id... and the beautiful Sparkle Proof Tool (by Maarten de Mol): http://www.cs.kun.nl/~maartenm/Sparkle/
Actually I mentionned Object I/O as the only library with which larger scale applications were written: | Perhaps the best would be to use an Object-IO like interface | with mvars as proposed by Simon Peyton-Jones, simply because it's | higher level than raw gui-calls and the Clean folks have used | it cross-platform in a few real apps. ------------------------------ Another misunderstanding I think:
I don't agree with the "While programming at the IO level works, it does not give one much of an advantage versus programming in C". Many proposals have been written that make use of the elaborate type system of functional languages to glue correct GUI programs; many approaches use functional language features do construct well-typed and well-structured Domain Specific Languages.
By Programming at the IO level I meant stuff like: win <- windowNew WindowDialog windowSetTitle win "About BoolEd" containerSetBorderWidth win 10 -- frame <- frameNew "The Boolean Editor" frameSetShadowType frame ShadowEtchedOut -- label <- labelNew "..." labelSetLineWrap label True labelSetJustify label JustifyFill containerAdd frame label -- but <- buttonNewWithLabel "Ok" buttonSignalConnectObject but (ButtonClickedHandler widgetDestroy) win -- box <- vBoxNew False 0 containerAdd win box boxPackStart box frame True True 10 boxPackStart box but True False 10 Not the Object IO style of building a layout with :+: combinators.