(sorry I forgot to forward this to the list)
Okay, HTML is just a document layout type markup. It was never
designed for application development.
Though (like the rest of the web) it organically mutated into this.
Though it doesn't and hasn't solved these problems.
That is why we are inundated with all these client side frameworks.
The few that come close to representing "application development" in
the browser are things like
http://www.cappuccino-project.org/
Here are some demos:
http://www.cappuccino-project.org/learn/demos/LightsOff/
http://www.cappuccino-project.org/learn/demos/FlickrPhoto/
There are whole host of rich client applications - google closure
tools, openlaszlo, anglularJS, enyo, lively kernel etc
you might want to come up with a solution that abstracts out cappuccino?
Now here is an interesting idea!
I just met with the creator of
red-lang.org.
There is some interesting technology there.
It could become possible to leverage the red-lang environment (http
servers and other libraries)
and build cross platform solution.
this way you can keep the QTk syntax and swap out the backend to talk
to red instead of TCL.
This then gives us android, linux, macos, windows and later iOS.
One could go a step further and create a DSL in red (its very good at
DSLs) that uses the builtin http server to do things you want for the
browser.
I'll cc the chap once my mate has charged his phone and I can get his
email address.
more answers inline
On Tue, Jan 7, 2014 at 4:48 PM, <
andre....@tudor.lu> wrote:
> Thanks for your reply.
>
> I would like to get "clean" ideas of the problem.
Yes I agree clean ideas are better,
> One idea written in a paper (pvr and others) is that one language suffice
> instead of using htm tags, javascript, css rules, ... Indeed, Oz can
> represent all of those langages.
> Another idea is the "declarative description" of your user interface. This
> means a declarative description of the structural components (a button
> inside a cell of a table) of your user interface, a declarative description
> of constraints (geometry, behaviour, reaction to events ?) between
> structural components, (other declarative aspects ?).
I recall reading a paper regarding this, I forgot the name and
actually I wanted to cite it..
It'll be great if you could give me the paper name, I've been wanting
to re-read it
>
> Your remarks are additional good ideas.
>
>> "In other words keep the naming the same as HTML5"
> I agree.
> But, in the Qhtml of Mozart 1.4 they tend to re-implement functionalities of
> Tk, such as td/lr, toplevel, nswe positions and glue, ...
>
>> "HTML5 has a widget set."
> I disagree.
Well is a button not a GUI widget?
http://html5doctor.com/element-index/#button
> You pointed to me "enlighment" and I think this is a widget set.
> jQueryUI tries to build a good widget set.
>
>>"Just implement what HTML5 has on offer."
> I agree with you.
>
>> "
https://github.com/wmeyer/roads"
> Thanks for pointing me that. I might re-use something from that. But if the
> idea is to use only one language as possible, we have to modify that.
>
>>"This might sound a bit wild..."
> I think you answered me with your preceding remarks.
>
>
>>"... yet easily extendable to support different GUI toolkit backends."
> I agree.
> But the problem is that I have no documentation about the "conceptual
> architecture" of a widget set.
> I think there is some compositional independence between:
> 1) "structural geometry" (something look like a table structure, menu
> structure, button structure, text structure, character structure, ...)
> 2) "geometrical constraints" (glue, nswe, ...)
> 3) interaction (= events and re-actions ?)
> 4) functional aspects (behave like a table, tooltip, ...)
>
> Is it true that Tk deals better than HTML5 for that independent composition
> of 1, 2, 3, and 4 ?
For desktop applications yes I agree Tk it far superior to HTML5. HTML
is just a layout markup language.
But there are other issues with Tk, such as lack of touch support, the
world is moving to mobile devices with native widgets.
Instead of distributing the user interface (as HTML does) why not
distribute oz (which it was designed for) to the native GUI widgets?
> If yes, it would be interesting to architecture the Oz code with that
> compositional independence.
Agreed!
> In the current implementation of Qtk and Qhtml it seems that, for instance,
> the file for menu (QTkMenu.oz and QHTMLMenu.oz) contains all four aspects.
> Sometimes this is worse: table has no specific file, but its implementation
> is (split ?) the code of other files (base ? , other widgets ?).
>
> What appears to me is that Mozart is quite "naked" because there is no
> libraries for http servers, for UI, for system "scripting", DB, Ontologies,
> tests, ... How to solve this problem efficiently, i.e. by collecting more
> and more libraries without loosing them when upgrading ?
I don't think future libraries will be lost. Oz syntax and semantics
are rock solid. Libraries will last quite a long time - (famous last
words)
> Thanks a lot for your mail.
>
> André Rifaut
>
> PS:
> I began with Unix, X11 (postscript) and SPARC workstations (I'm old) . That
> was a widget set with management of constraints + events/actions +
> postscript as pure text-based description of code and data.
This is a wonderful learning experience so I'll try my best to help.
Stewart
>
>
>
>
> From: stewart mackenzie <
seto...@gmail.com>
> To: andre rifaut <
andre....@tudor.lu>,
> Date: 07/01/2014 10:54
> Subject: Re: [mozart-hackers] Re: QHTML for MOZART2 (on Windows)
> ________________________________
>
>
>
> andre rifaut <
andre....@tudor.lu> wrote:
>>
>>
>>*1) Porting Qtk towards Qhtml does that means sticking to Tk widget set
>>or
>>moving to html5 widget set (if any such set)?
>
> I've looked at a unified user interface widget naming set, but each
> widget set can be dramatically different from the next.
> My personal thoughts are to just keep the API the same as the widget
> set you're using. That way you can rely on the documentation
> associated with the toolkit in use.
>
> In other words keep the naming the same as HTML5
>
>>2) If html5 has no widget
>>set,
>>what widget set do I have to implement in html5?
>
> HTML5 has a widget set. buttons, grids textboxes etc Just implement
> what HTML5 has on offer.
>
> Your might want to take a look at wmeyer's roads application
>
https://github.com/wmeyer/roads
>
>>3) If i have to stick
>>Qtk
>>(and Tk), then we have the following question:*Porting Qtk towards
>>Qhtml is
>>this as difficult as porting Tk towards Html5?*"
>
> This might sound a bit wild... but how about implementing a language
> similar to TCL.
> It's goal is to provide good interaction with mozart2 yet easily
> extendable to support different GUI toolkit backends. (It would most
> likely support an HTTP server in the case of HTML5)
>
> In this case I would try to make it such that there are generic names
> for each of the different GUI toolkit entities. I would work to
> achieve as broad a user experience as possible given all the supported
> backends.
> This means more powerful GUI toolkits would not have all their
> features expressed as weaker GUI toolkits don't encompass that
> feature.
> Then I'd create one documentation set that works across all supported
> backends.
>
> What do you think?
>
> Kind regards
> Stewart
>