RevServer deployment on OSX Server

J. Landman Gay jacque at
Fri Feb 18 23:34:56 EST 2011

On 2/18/11 9:57 PM, Bob Cole wrote:
> Read Keith's intended use of revServer, it reminded me of an old
> program called LiveCard distributed by Heizer Software in the late
> 1990's. Great name for a program, eh? I was fascinated by the idea
> when it came out but I didn't know enough about servers and the
> internet back then. Anyway, I Googled "LiveCard Heizer" and found
> this link: which is an old TidBITS
> story.  Reading that article, you will see a description of how
> LiveCard used HyperCard stacks as a CGI. I wonder if this might be
> the kind of thing Keith wants. I don't know where to find the
> program.  Anyone have any experience with it?  Will revServer
> ultimately function similarly to the old LiveCard program?

I used it, and once for a client project. It was ingenious. The scripts 
were open and you could read them.

HyperCard was much simpler than LiveCode, so it was easier to do this, 
but it had its limitations even so. Using HC as a CGI wasn't new, others 
had figured it out, but putting stacks on the web this way was. What it 
did was loop through every object on the card and write comparable HTML 
code to match up button hotspots. It also figured out the rects of 
fields and their contents. Then it took a snapshot of the card image 
(had to use an external for that) and displayed it on a web page as an 
image map with hotspots and fields defined, as a form I think. All the 
HTML was generated by scripts on the fly. It was slow, but so was 
everything back then, and it was only a little slower than usual.

When a user clicked a hotspot on the image map or changed a field's 
contents (they had to click a button to register field changes, because 
these were really forms) the cgi sent the click location data or field 
ID and contents back to Hypercard. For a button, it simulated a physical 
click on the real stack; for a field, it updated the field text. The 
stack responded however it was scripted to, and then LiveCard repeated 
the scraping process, looping over the card objects to find the hotspots 
and fields, and regenerating a new imagemap and form.

It could simulate anything that both HyperCard and HTML shared at the 
time, which was basically buttons, images, popup menus, and maybe a few 
other things I've forgotten. It could not do things like card animation 
because the "cards" were just images. It couldn't move objects on screen 
or anything that required live, rapid interaction. But it did an amazing 
job of what it was capable of.

It also used GET requests to keep track of the user's progress, and so 
could implement a simple shopping cart. I didn't use that feature.

Jacqueline Landman Gay         |     jacque at
HyperActive Software           |

More information about the Use-livecode mailing list