[comp.sys.mac.hypercard] real object stuff in Hypercard

COMBS@SUMEX-AIM.Stanford.EDU (Dave Combs) (09/15/88)

Any comments on the following suggestions?

One of the main problems I have in trying to use Hypercard for a relatively
involved application is the lack of really useful variable storage.
While Hypercard espouses the use of object-oriented programming techniques,
and is built with a hierarchy from buttons and fields up through stacks,
there is no real concept of "storage" except a) in fields, b) in variables
which are local to a single message handler, or c) variables which are
global to the entire system (or is it a single stack?).

I would find it VERY useful to be allowed variables which are common to
a script (rather than a particular handler), and which may be referred to
in scripts "underneath" the one where the variable is defined (e.g.,
referring to a card-script variable in a button script).  

It would
individual instances of the various types of Hypercard objects (basically,
I want to be allowed to define my own slots and values).

Also, does anyone know of any plans to include more substantial data
management facilities in Hypertalk?  It's rather tiresome to try and 
simulate "records" with "fields", or lists of items (a la Lisp), though
I suppose I could dedicate entire cards to that function.

Cheers,
Dave

rich@oxtrap (K. Richard Magill) (09/17/88)

In article <68289@sun.uucp>, COMBS@SUMEX-AIM (Dave Combs) writes:
>One of the main problems I have in trying to use Hypercard for a relatively
>involved application is the lack of really useful variable storage.
>While Hypercard espouses the use of object-oriented programming techniques,
>and is built with a hierarchy from buttons and fields up through stacks,
>there is no real concept of "storage" except a) in fields, b) in variables
>which are local to a single message handler, or c) variables which are
>global to the entire system (or is it a single stack?).

I've been wondering why I can't let HC dispatch messages to an arbitrary object
with or without a screen representation.  Say, an external code resource?
Virtual cards?  (maybe a heap card with scratch fields that create
themselves...)
--