Let me introduce a new web-application framework “Redom” by Eki Ko. He
is a master course student at graduate school of The University of
Tokyo.
Redom is a distributed object based server-centric user-friendly web
application framework. Redom enables developers to write all application
logic in Ruby at server side easily using both browser-side and
server-side libraries. Redom provides distributed objects published by
browser in natural Ruby syntax so that developers can access
browser-side objects directly.
In short, you can make a dynamic web application only using server-side
Ruby program with Redom framework.
For example, you can make multi-client chat application in 47 lines
server-side Ruby program. You don’t need to write any client-side
JavaScript program.
So it’s basically Google Web Toolkit (GWT: GWT Project) for Ruby; much like
Pyjamas (http://pyjs.org/) is for Python?
How generalised will you be making the client-side, e.g.: will you be
generating a bunch of HTML+JS+CSS files which talks RESTfully with
your Ruby server; that you can then load onto PhoneGap apps?
So it’s basically Google Web Toolkit (GWT: GWT Project) for Ruby; much like
Pyjamas (http://pyjs.org/) is for Python?
How generalised will you be making the client-side, e.g.: will you be
generating a bunch of HTML+JS+CSS files which talks RESTfully with
your Ruby server; that you can then load onto PhoneGap apps?
GWT (and maybe Pyjamas) compiles some language to javascript.
But redom doesn’t make any JS (and other language) code (*1). All of DOM
operations (and other JS methods) are invoked by RPC from server-side.
Yes, it has performance drawback because all operations need
“server->browser” RPC (and also all browser-side events such as mouse
click, etc will be sent to server-side).
We optimize huge RPCs sendig using bulk messaging technique.
*1: we support Ruby to JS compilation using Opal only for performance.
I am running the redom examples (via rackup). The http-server is running
fine, but after the initial screens of the apps, it says ‘socket closed’
in the console-log.
I am running the redom examples (via rackup). The http-server is running
fine, but after the initial screens of the apps, it says ‘socket closed’
in the console-log.