Hypercard 2.2
Volume Number: 10
Issue Number: 3
Column Tag: Tools Of The Trade
Hypercard 2.2
Apple’s taken HyperCard back from Claris. Here’s what they’ve done
with it
By Paul Foraker
In 1987, when Apple Computer introduced HyperCard at MacWorld Boston, most
experts thought that users would primarily ‘play’ stacks, not script their own. Turned
out that a majority of HyperCard users became scripters. Furthermore, to the
surprise of HyperCard’s creator, Bill Atkinson, and the rest of the HyperCard Team, a
very large number of scripters were in the business and education markets, not the
home market. With the introduction of HyperCard 2.2, Apple Computer makes a small
but significant step toward acknowledging its technical market, and this version
represents a significant upgrade to perhaps the most popular development
environment on the Macintosh.
There are actually two HyperCards: the full application and the unscriptable
HyperCard Player. In the beginning, when there was only one, the full version of
HyperCard shipped in the box with every Macintosh. When Claris took over the
application a few years ago, the HyperCard Player was introduced, replacing the
complete application in the CPU box, and a “HyperCard Developer’s Kit” was sold
separately. With version 2.2, Apple continues this scheme, although without calling
the full version a “developer’s kit”. In the United States, every new Macintosh will
have the HyperCard Player on its hard drive. The About box in the Player mentions the
full version.
(Claris also tried an interim scheme of shipping a crippled, low user-level,
Home stack, which users could override by typing ‘magic’ in the message box. There
was some confusion between this version and the Player, that had people trying
unsuccessfully to type ‘magic’ in the message box of the Player. The magic in
HyperCard 2.2 is all plain and visible.)
What’s in the box?
Weighing nearly as much as the original 128K Macintosh, the HyperCard 2.2
product box contains the full development version, AppleScript 1.1 Runtime, and for a
limited time, Motion Works’ ADDMotion II, for a total of eleven 800K diskettes. The
documentation has been updated and includes a revised Script Language Guide and
HyperCard Reference Manual. Serious AppleScript developers will want to purchase
the AppleScript 1.1 package separately, because the bundled version does not contain
the AppleScript Language Guide. On-line documentation includes the HyperCard Help,
HyperTalk Reference, and the HyperCard AppleScript Reference stacks. Balloon help
has been implemented extensively.
An installer places a 10+ MB “HyperCard 2.2” folder on the designated hard
drive. Users can customize the installation to leave out AppleScript and ADDMotion.
What’s new?
Most of the differences between HyperCard 2.1 and 2.2 can be summarized under
five categories: (1) OSA support, (2) color, (3) stand-alone applications, (4)
enhancements to HyperCard’s feature set, and (5) improvements to HyperTalk,
HyperCard’s built-in scripting language. In addition, WorldScript support has been
improved such that, with the Japanese language kit installed, users can have both
Kanji and Roman text in the same field.
The file format for HyperCard stacks did not change with this version, so
HyperCard 2.1 can open and run stacks built in 2.2 (except, of course, the new
features). Further, HyperCard 2.2 can open and run 2.1 stacks without any
conversion.
OSA Support
HyperCard users tend to think of HyperCard and HyperTalk as inseparable. In
version 2.2, HyperTalk is not the only language that can be used in HyperCard scripts.
Any OSA-compliant scripting language (such as AppleScript, UserScript, QuicKeys)
can be used in the scripts of HyperCard objects. A new popup menu in the script editor
lists the available languages on the user’s computer.
Figure 1 The new scripting language popup menu
in a script editor window.
HyperCard 2.2 is an AppleScript-scriptable and -attachable application, though
it is not recordable. HyperCard stacks can be controlled by other applications, and,
perhaps more importantly, HyperCard can provide an interface to other scriptable
applications. As programmer Kevin Calhoun put it, “any scriptable application can be
an XCMD for HyperCard”.
HyperCard 2.2 supports the Core and Required suites for Apple Events, and
provides its own HyperCard suite. About 90% of HyperCard’s commands, functions and
features have been implemented in the HyperCard suite. Missing commands can be
executed by using the “do script” or “evaluate” commands, so virtually all of
HyperCard is available through AppleScript.
Message passing between AppleScript and HyperTalk scripts is fully
implemented, so that HyperTalk handlers can call AppleScript functions elsewhere in
the hierarchy and vice versa.
To demonstrate the effectiveness of the AppleScript implementation in
HyperCard, the reviewer constructed a simple “mail” stack. The stack provides fields