Vivek Rajan wrote:
Thanks everyone. Appreciate your help. I am most proficient with PERL and
was hoping to use PERL. PHP looks interesting.

John- How do you generate AJAX style dynamic HTML? Can you provide more
info?

Sure. I wrote a compiler and a virtual machine for a simple language which incorporates basic control structures including procedure calls plus an interface to Sqlite such that it binds a callback which can be a procedure in HTML or Javascript or both to a row so that the callback fires each time a row is delivered. The VM places the row data into local storagei each time the DBMS delivers it a row.

A very common usage of a callback procedure is to form a row in a table.

A special HTML tag is defined to make the embedded instructions look like HTML. The compiler strips out these tags and creates a byte code executable format which makes the generation of output pages efficient.

The HTML/Javascript pages is compiled into a byte code format and upon execution its variables are dereferenced from the local data store and embedded in the generated HTML page.

There is also an RPC capability linked to the XMLHttpRequest Javascript object. A request from the web page in the browser sends data in JSON format and that loads Javascript variables which can be displayed. That implements AJAX by allowing a web page to behave dynamcially without the need to refresh. The RPC processor can alternatively deliver its data in XML.

The RPC capability is designed to make the interaction between the web page and the server as transparent and simple as possible. These is a repository of RPCs and these are accessed by name.

RPC calls can also INSERT and UPDATE rows in the DB.

The application server holds each instance of an Sqlite database open exclusively and serves all the threads using it from the one instance. Each user connection is a thread in the application server. The DB can be on a different machine without problems because it is accessed exclusively and no locking glitches get in the way of secure processing. Synchronization is supplied by rwlocks on the threads.

A graphics processor is built in to allow charts as an alternative to tables and the generated images are embedded in the generated pages.

Finally the design of the server is based on the principle that business rules etc will be defined as database functions, not embedded in the workflow level which generates and supports web pages.

-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to