# from Waldemar Biernacki
# on Monday 30 November 2009 08:23:

>My idea is to build specific very-high-level language in which all
> application logic is written. This language should be reading by GUI
> and WEB engines giving similar application. It is interesting that in
> web area we have many such templates (although their code programming
> level is too low in my opinion - including catalyst) but on a GUI
> side they are very few (it should be written in wxperl in your case).

That sort of touches on what I'm doing with FreeTUIT, though the 
high-level language is all about widget layout and event connection.  
Some backend logic doesn't contain any Wx code, but when you get into 
responding to user events you need rather specific code interacting 
with the view (e.g. wxWidgets vs javascript+cgi.)

Note that FreeTUIT is intended mostly as a desktop GUI framework, but 
I've been asked about whether it could do web apps and have been 
thinking about how that might be possible.

There's a big gap between the two paradigms though because in a GUI app 
you're not designing around network latency.  I'm having a hard time 
thinking of how those differences could be abstracted without crippling 
the API in both use cases.

There's also a very limited widget-set in web applications as compared 
to desktops.  For instance, webapps would frequently use a submit form 
for appending/editing tabular data where a guiapp would trivially allow 
inline edits in the table.  Similarly, the webapp would page the data 
where the guiapp would easily have a scrollable widget that's lazily 
populated.

In "traditional" (i.e. without javascript) webapps, you're basically 
working in an "everything is a wizard" paradigm of stepping through 
prompts and a rather sequential interaction -- pretty simple concepts 
to map between a desktop and webapp.  With ajax involved, you get to 
juggle the widgets right in front of the user, which makes for a more 
mediated experience.  The trouble with automagically handling this 
widget-juggling code in both webapp/desktop paradigms is not only the 
javascript/wx API difference, but also that the code seems to naturally 
factor into differently shaped components in terms of dealing with 
what's in front of the user and recalculating/rendering data from the 
backend.

Amusingly, there's a thread about "Qt on rails" happening over on the 
kde bindings list.

Also amusingly, if "MVC" was a valid abstraction, this problem would 
have been trivially solved long ago. :-D

--Eric
-- 
"It works better if you plug it in!"
--Sattinger's Law
---------------------------------------------------
    http://scratchcomputing.com
---------------------------------------------------

Reply via email to