Bernard,

Although AJAX/DHTML is a very powerful thing, I think people on this list keep mixing things, liking comparing oranges to shoes. Revolution could not export Flash because Revolution feature set is something that is not available for flash, flash is a vector animation thing with some scripting language for actions. Rev is a computer programing language with hooks for networking, databases, encryption and lots of things. They simply don't match. You can't convert one thing to the other. What many toolkits do is use flash to call server side methods, the server does the hard part and flash just presents it. So again, Rev could not convert to that.

As for AJAX/DHTML thats very powerful and many here already used Revolution on the server side + AJAX techniques on the client side. This is perfectly doable now, you just need to learn the tricks of the trade. As for converting a stack application to a web based application, this is trickier than people imagine, there's a lot of things that don't match, for example rev is all about absolute positioning and the web is all about relative positioning, the most used controls in rev are text fields and buttons and in the web they are not the most useful things, it's not as straight forward as people think to match from one side to the other.

Today here in Malta we had a group of people chating about doing such conversions, it is way harder than people think and it would require a clever server setup. Javascript and DOM manipulation is very very very powerful, its a major tool for anyone that can handles it, Javascript is a really nice prototype based language and along with Dan Shafer I too enjoy it, depending on what you're doing you can be pretty safe with it. Libraries such as YUI handles many of the cross browser stuff for you.

People here need to be reminded there's no such thing as AJAX, thats just some buzzword for technologies that are here since a long time and that AJAX stuff needs a well designed server side component. Any ajax application will have DHTML/XHTML + CSS + Javascript on the client and something on the server. If that thing is designed wrongly, your server will break, your bandwidth costs will soar, you should not do roundtrips when you don't need'em. Now asking for something that picks stacks that are based on stack -> card -> control metaphor, that makes heavy use of a unique technique such as the message path and magically it converts it into a two component thing that has xhtml + css + javascript + rev on the server side and that still has cards and the message path is not something that can be looked upon easily. Just as an example, if you have a line in your stack script that sends a mouseup to a button, in the AJAX converted thingy, this would be on the server script that is the only one available to run revolution script code, but the said button would be on client ajax stuff and thus not available to the server, the server will not be able to push data into the client unless the client requests the data. If you keep pooling the server for updates, you do unecessary trips to the server and loose bandwitdh and money, so how to match a command as simple as sending a mouseup to a button. Someone might say that no one would send a mouseup to a button by code, but this example would still be true for sending any message thru the message path beetween the business logic part (server component) and the presentation part (DHTML + AJAX)...

Everyone here keeps asking here for a browser plugin, so, let us be realistic and touch topics such as how to match revolution feature set to the web. People often see only the presentation layer, okay, that is easy to do, but what about the unique things that we all rely on such as the message path. How can we map from Rev to XHTML container. Thinking about such hard parts might improve the chances of ever having something done by third party or the runrev team, simply asking for magical converters and filling bugzilla requests will simply not help, so what about we chat about how this can actually be done, and start slowly step by step thinking on a roadmap to get it done without touching the engine code...

Andre


On Nov 4, 2006, at 12:54 AM, Bernard Devlin wrote:

>>
Just a small correction (or perhaps I misread this). Flex produces
Flash ouput (as swf files). I thought Laszlo did the same, but
perhaps it has options for AJAX output too.
<<

Hi Dave

This year Laszlo decided to target AJAX/DHTML as a delivery mechanism.

I've (occasionally) pointed out on this list the need for a browser plugin for Rev - there are 3D game companies with browser plugins, and the Squeak people have also done one for Smalltalk - it is certainly doable. However, the complaints about the need to download a plugin always apply. Nevertheless, once that plugin has been downloaded and (correctly) installed it is there whenever someone comes across Rev stacks.

However, I'm also coming round to the idea that maybe RunRev should be augmenting the standalone builder to add a new target - AJAX or Flash. Flash is probably easiest in that there are less variables (different browser implementations), but since Laszlo are now doing AJAX as a target executable (sorry, if this vernacular is too XCode...) when they have been targeting Flash for years, then maybe RunRev would be better to go directly to AJAX. The DoJo javascript library is rising to the top as an AJAX library. I have used it's earlier incarnation (as NetWindows) for some years, and it was IMO the best of the open-source alternatives. Javascript/DOM is way more powerful than people imagine, but there are so many incompatibilities introduced by the different browser vendors.

Anyway, there is a Tasmanian company producing a product called Morphik that is doing this for Delphi, c++, c#, and java. The app is produced in those development languages, but can produce a standalone version of itself that is basically Javascript/AJAX.

Bernard Devlin


_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to