
On Tue, 2012-01-17 at 22:05 +0300, dokondr wrote:
On Tue, Jan 17, 2012 at 6:42 PM, John Lenz
wrote: HTML5 Canvas is great for charts. If you go this route you might as well use a library which draws charts for you instead of writing all this code yourself.
Personally, I use extjs version 4 which has some amazing charts, but there are other libraries out there.
http://www.sencha.com/**products/extjs/examples/#**sample-3http://www.sencha.com/products/extjs/examples/#sample-3
Essentially the server provides the data in JSON or XML some other format, and the extjs code draws the charts on the client side.
If you go with extjs, then the server side I would suggest a small, simple yesod or snap server. You could probably get the server under a hundred lines of code with yesod; see some of the examples in the yesod book. yesod or snap would serve JSON of the statistics on request, and also serve the javascript files which draw the charts.
Yes, I was thinking about using Haskell to generate everything that specific Javascript library needs to display charts in browser. Naturally charts are to be displayed by this library itself. I also would like to have Haskell tools to generate Web GUI in Javascript. As for yesod, I am not sure that I like approach which mixes HTML with code, or even worse - creates a new weird HTML-like language like 'whamlet quasi-quotation', for example:
<!-- <a href=@{Page1R}>Go to page 1! -->
I prefer using Turing complete PL to program web client, like the one used in GWT (Java) or Cappuccino (Objective-J). http://cappuccino.org/learn/ In this case you /almost/ don't need to know HTML, CSS, DOM, Ajax, etc. to develop WebUI and good PL lets you concentrate on problem domain instead of bothering about browser support. It is a real pity that Haskell still has no such tools to generate Web GUI in Javascript. (((
Have you seen Chris Done's posts on the subject? http://chrisdone.com/tags/javascript.html