[plt-scheme] GUI builder ?

From: Chris Stephenson (cs at cs.bilgi.edu.tr)
Date: Tue Dec 12 15:02:11 EST 2006

I agree. The great educational advantage of world.ss is this:

If you get the idea that the place you have to start is the careful
design of the data definition of World (the Model) and that you can
write the view and controller functions completely separately, you can
follow the design recipes and easily get really nice looking results. If
you fail to understand this you just get into a mess. That puts a great
premium on design and shows that abstraction and a systematic approach
pay off.

We should have world-gui.ss and world-web.ss to provide web and gui
interfaces that support the same sort of model view controller
abstraction. Anyone planning to write them? Anyone want to point us in
the right direction and we try to write them? gui.ss does not have the
same properties as world.ss

Chris Stephenson

Matthias Felleisen wrote:
> If you know the world.ss teachpack (for teaching freshmen), imagine
> a similar teachpack for GUIs instead of just graphics. I think that's
> what you want and it's far more elegant than Basic. -- Matthias
>
>
>
>
> On Dec 12, 2006, at 9:43 AM, Ivan Altaparmakov wrote:
>
>> My tought was that it will be good if learning of GUI building
>> is put in erlier stage of learning - before object system.
>> It is more exciting to print and input to/from graphical form and
>> controls
>> insteoad of console and if this printing is as easy as to console.
>> Justbasic had done this in easy way and in way similar to scheme sending
>> commands to objects.
>> Lerning object system would be done later.
>>
>>  Few lines of code :
>>
>>      print #main, "font ms_sans_serif 0 16" - sends command to main form
>> to set the font
>>      print #main.textbox3, "!contents? value$" sends command to
>> textbox2 of main
>> form to store contents of the text field in value$ variable i.e.
>> inputs value
>> from text box control
>>      print #main.statictext2, value$  - prints value of variable
>> value4 to the
>> statictext of main form
>>
>> this is just print and input and no object system , but better then
>> console.
>>
>> here the hole text which is generated automaticaly except 2 lines :
>>
>>
>>     nomainwin
>>
>>     WindowWidth = 550
>>     WindowHeight = 410
>>
>>     button #main.button1, "Button Caption", [button1Click], UL, 26,
>> 16, 122, 25
>>     statictext #main.statictext2, "StaticText Caption", 22, 56, 144, 20
>>     textbox #main.textbox3, 30, 86, 100, 25
>>     open "untitled" for window as #main
>>     print #main, "font ms_sans_serif 0 16"
>>
>>
>> [main.inputLoop]   'wait here for input event
>>     wait
>>
>> [button1Click]   'Perform action for the button named 'button1'
>>     'Insert your own code here
>>     print #main.textbox3, "!contents? value$"
>>     print #main.statictext2, value$
>>     wait
>>
>>
>>
>>
>>
>>> Of interest, I see GUIbuilder as a way of learning the object
>>> system.  (and
>>> also as a way of refactoring hand written GUI code into something
>>> readable.)
>>>
>>> Corey
>>>
>>> --((lambda (y) (y y)) (lambda (y) (y y)))
>>
>> ________________________
>> http://mail.tu-sofia.bg/
>>
>> _________________________________________________
>>   For list-related administrative tasks:
>>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
> _________________________________________________
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme


Posted on the users mailing list.