[GUI] Some random thought of my own

David Sankel camio@yahoo.com
Thu, 6 Mar 2003 20:34:54 -0800 (PST)


--- Nick Name <nick.name@inwind.it> wrote:
<Snip = Discussion on hybrid callback/event approach>

This probably belongs in GUI and events/callback
thread.  I must say it is a good idea to compromise
the heated event/callback discussion.  I have not seen
a really cool feature of events yet.

> =====
> 2. How is a widget created?
> Everyone seems to agree on
> 
>       createSomething :: SomethingConfiguration ->
> IO Something
> 
> notice how  
> readable is
> 
> 
>        runGUI (window (vBox [label "Hello
> World!",w])
>

This is a very cool idea.  I do think it is a bit on
the Fudgets (experimental) side of things though.  For
CGA I would probably lean against such an idea since
it hasn't be practically proven.  I'm not sure how
often I would use this in my day-to-day gui coding.  I
do really like the idea of "lazily" creating widgets
as it is much in the spirit of haskell ;-).

>    - We could have two constructors for a button,
> one "a la GIO" and one
>      with standard function syntax, wich is more
> readable in some cases.
>         Example:
>    
>           button "Hi all"
> 
>        versus
>  
>           button [label=:"Hi all"]

Although the GOI Attributes are extremely verbose in
comparison to the standard functional syntax, I see
them to be superior in many ways: those unfamiliar
with CGA would have a much better time picking up the
syntax, and it also shows itself to be an improvement
of the Object Oriented style of default parameters.

>    - We need to consider the loading from resource
> files as a     
> constructor, not everything is pragmatic. I think
> this is      not a big

I personally think this is out of scope for an initial
release of CGA, but this is most definitely something
to keep in mind.

You've got some very interesting ideas, I hope you
continue to participate in this group.

David J. Sankel