[Cuis-dev] DSL GUI framework

Mariano Montone marianomontone at gmail.com
Sat Sep 4 08:55:19 PDT 2021


Hello,

I'm also interested in this.

I think Pharo Spec does something similar to what you describe, doesn't
it? I'm not really sure as I haven't used it.

I've also done some experiments for quickly generating Morphs from data,
like this:

(QuickList on: Object allSubclasses)
	actions: {'Browse' -> [:class | BrowserWindow fullOnClass: class]};
	openTitled: 'Classes'.

Here: https://bitbucket.org/mmontone/mold/src/master/QuickViews.pck.st

Give it a try if you want, it has several examples on the comments.

Cheers,

Mariano

El 4/9/21 a las 04:44, Hilaire Fernandes via Cuis-dev escribió:
> Hi,
> 
> Cuis' Morph is great, it is clean, easy to use, beautiful. One can code
> sexy view with it.
> 
> Nevertheless we still miss an intermediate framework in the Cuis
> ecosystem regarding GUI. Something between the Morph ecosystem
> (VectorGraphic, Layout,...) and the "honest human" programmer.
> 
> In the context of the Dynabook concept, where you write Smalltalk script
> to glue together different parts to produce a meaningful small
> applications, we need this intermediate DSL GUI framework to more easily
> design and write such small applications.
> 
> I took a brief look about some existing frameworks out there.
> 
>   * *Concur .* This interesting article[1] explains general concept on
>     widget Space (Layout) and Time (Event) compositions. How it is
>     designed the as simple as possible to compose. Some part are hard to
>     understand because it relies on the Haskell programming language.
>   * *Glimmer.* Ruby framework for GUI[2]. Resulting code looks already
>     too complex to my taste.
> 
> Regarding space composition, it will be neat to write code as:
> 
> "horizontal composition"
> ('Morph is great:' asLabel , boolean asWidget)
> "vertical compositions"
> | ('I like Smalltalk:' asLabel , boolean asWidget)
> | ('Ok' asButton)
> 
> This is just rough idea how simple the code should be. No idea yet about
> the code could be simple for Time composition (Event).
> 
> Interested to read your thought, reference materials or anything useful
> in the reflection.
> 
> Best
> 
> Hilaire
> 
> 
> [1]
> https://potocpav.github.io/programming/2020/05/01/designing-a-gui-framework.html?utm_source=pocket_mylist
> 
> [2] https://github.com/AndyObtiva/glimmer
> 
> -- 
> GNU Dr. Geo
> http://drgeo.eu
> http://blog.drgeo.eu
> 
> 



More information about the Cuis-dev mailing list