www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - thoughts on best way to implement bokeh interface in D

Bokeh is a very cool charting library that is distinguished by a 
focus on interactivity in the browser.  Each chart is an html 
file with an embedded bokeh javascript library - the server 
generates JSON from the object model and the client take this and 
renders it.  There are ways to register callbacks on the server, 
so the client can click on a data point or some user interface 
object and the server can update the canvas and have the client 
redraw it.

It also has a matplotlib interface, which makes porting legacy 
code easier.

At the moment there are bindings in python, R, Julia, and scala.  
I was thinking about starting to work on D bindings, because I do 
not see an alternative to bokeh without reinventing the wheel but 
for the time being this means using D to talk to bokeh via pyd 
which is awkward.

Gallery:
http://bokeh.pydata.org/en/latest/docs/gallery.html

Ref docs here:
http://bokeh.pydata.org/en/latest/docs/reference.html

Julia bindings here:
https://github.com/bokeh/Bokeh.jl/tree/master/src

Scala here:
https://github.com/bokeh/bokeh-scala

Python here:
https://github.com/bokeh/bokeh/tree/master/bokeh

I haven't got very far with it, and won't be able to immediately. 
  But if anyone happens to have thoughts on how best to approach, 
I would appreciate it.  I would obviously open source the 
project.  As far as I can see one doesn't need to depend on the 
dynamic reflection aspects of these languages, so it looks like 
it would just be a question of translating the objects to structs 
and classes, and then grappling with the JSON translation.


Laeeth.
Mar 15 2015