HyperCard and Stacks

When Apple introduced HyperCard in 1987, [Apple-1989] and bundled it free with every Macintosh, it quickly became a very popular hypertext system. HyperCard was, however, not originally designed to be a hypertext system, according to its designer, Bill Atkinson (also the developer of MacPaint). It was intended as a tool for developing prototypes of user-interfaces.

The basic node object in HyperCard is the card, and a collection of cards is called a stack. The main hypertext support is the ability to construct rectangular buttons on the screen (not tied to underlying objects like text) and associate a program, written in HyperTalk, with them. In most cases the program will consist of a single goto statement.

Typically all cards in a HyperCard stack have a button to go to the next card and to the previous card. This lets you page through the stack. Stacks are therefore mostly useful to provide a paging mechanism for nodes that are too large to fit onto a single card. However, in general there need not be a linear order in which to read the cards. The stack is atypical for hypertext applications, because it suggests a linear structure, while hypertext promotes the use of much richer structures.

The HyperTalk language is a general programming language, which is very easy to learn. It is targeted towards prototyping graphical user interfaces. Links need not be hardwired. The destination of a link is simply the result of a HyperTalk program. This means that it is easy to program links that lead to different destinations, depending on the "context" of the user. HyperTalk also has show and hide commands, to make fields on a card visible or invisible. This gives HyperCard almost the equivalent of pop-up windows like OWL's Guide.

Creating hypertext using HyperCard is more like programming than like authoring. Therefore, despite the fact that HyperCard was (and is) free, many hypertext documents have been developed for the more recent commercial hypertext system Storyspace which is available for both the Macintosh and the IBM-PC with Windows.