Need advice: Haskell in Web Client

On 01/26/2012 11:16 AM, dokondr wrote:
Ideally, I would be happy to be able to write in Haskell a complete front-end / GUI, so it could be compiled to different back-ends: Javascript to run in the Browser and also a standalone app. In Python world this is already done with Pyjamas (http://pyjs.org/) - "a Rich Internet Application (RIA) Development Platform for both Web and Desktop." Also from Pyjamas site: Pyjamas "... contains a Python-to-Javascript compiler, an AJAX
**Bardur Arantsson wrote: framework
and a Widget Set API.
Pyjamas Desktop is the Desktop version of Pyjamas Pyjamas Desktop allows the exact same python web application source code to be executed as a standalone desktop application (running under Python) instead of being stuck in a Web browser."
Architecture diagram http://pyjs.org/wiki/pyjamasandpyjamasdesktop/
I wonder if somebody works on similar Haskell "Rich Internet Application (RIA) Development Platform" ? Any ideas, comments on implementation of such system in Haskell? What existing Haskell GUI libraries can be used for a desktop GUI, etc.?
Well, it's basically just proof-of-concept at the moment, and it's not really usable for real applications at the moment, but there is
http://hackage.haskell.org/package/dingo-core-0.1.0 http://hackage.haskell.org/package/dingo-widgets-0.1.0 http://hackage.haskell.org/package/dingo-example-0.1.0
The basic client<->server communication, server-side state handling, etc. is there, but it's missing a couple of things before it could be used for real apps: There's no real security, and there are *very* few widgets. The few widgets that exist at the moment are also probably lacking a few operations. On the plus side, it's should be pretty easy to create new widgets.
You can get a feel for how the thing looks from an application programmer's perspective by looking at the source for the example.
Looks neat, thanks! If I got this write, in dingo all web page content is created by running Haskell on the server side in run-time and then sending generated html + js to the client (browser). I am looking for the opposite - when client does more work running Javascript generated by Haskell in advance, the approach that Pyjamas use ( http://pyjs.org/) with Python to Javascript compilation.
participants (1)
-
dokondr