HyperTalk is a high-level, procedural programming language that was used in conjunction with Apple Computer's HyperCard hypermedia program.
Designed by Dan Winkler in 1987, the target audience for the language was beginning programmers. HyperTalk programmers were referred to as authors, and the process of coding programs was known as scripting. HyperTalk scripts resemble written English, using a structure that is similar to Pascal.
In the late 1980s, Apple considered making the scripting language standard across the company, including it within its class Mac OS operating system and in other Apple products. While Apple did not oppose the development of imitations, like SuperCard, it created the HyperTalk Standards Committee in order to encourage compatibility between the variants of the language.
Although the final release of HyperCard was in 1998, and the Apple withdrew the product from sale in 2004, HyperTalk was given another lease on life through its plugin protocol, known as External Commands (XCMDs) and External Functions (XFCNs), when some XCMD authors extended the language with advanced features, special-purpose windows, drag-and-drop support, and other hardware interfaces.
Other scripting languages that were strongly influenced by HyperTalk are commonly grouped within the xTalk family of languages. These include CompileIt!-Talk, Double-XX-Talk, MediaTalk, PlusTalk, SenseTalk, SuperTalk, Transcript, and XION. These clones added features to the language that are expected from modern programming languages, such as exception handling, user-defined object properties, multi-threading, and user-defined objects.
HyperCard is a development kit created for the Apple Macintosh and Apple IIGS. Released in 1987, it was included with all new Macs sold then and was also offered for sale separately. The last release of the software application was in 1998, and it was withdrawn from sale in 2004. HyperCard runs in the Classic Mac environment, but was not ported to Mac OS X.
HyperCard combines a flat-file database with a graphical, flexible, user-modifiable interface, and includes HyperTalk as a built-in programming language, used for the user interface and for the manipulation of data.
HyperCard is modeled on the concept of a stack of virtual cards, which hold data, much like a Rolodex. Each card holds a set of interactive objects, such as text fields, checkboxes, buttons, and common GUI elements. Users would browse the stack of cards by navigating from card to card through the use of a search mechanism, user-created scripts, and built-in navigation features.
Users could build or modify stacks by adding new cards through a drag-and-drop interface. The system included template cards known as backgrounds. When adding new cards, users could refer to one of these background cards, resulting in all of the objects on the background to be copied onto the new card, allowing for common layouts and functionality.
HyperCard's object-oriented scripting language, HyperTalk, supported most standard programming structures. HyperTalk code segments were referred to as scripts.
HyperCard could be extended through the use of External Command (XCMD) and External Function (XFCN) modules, which are code libraries packaged in a resource fork that either integrates with the system generally or with HyperTalk specifically. This was an early example of the plugin idea. However, these plugins didn't require a separate installation but could be included in a stack.
According to tradition, Bill Atkinson created HyperCard after an LSD trip, and originally referred to it as WildCard. Dan Winkler began developing HyperTalk in 1986, and the final product, which included the language, was changed to HyperCard. Atkinson released HyperCard to Apple with the stipulation that it be included free on all Macs.
HyperCard runs natively only in the Classic Mac OS, but it can be used in the Mac OS X Classic mode on PowerPC-based machines, G5 and earlier. The last native HyperCard authoring environment is Classic mode in Mac OS X 10.4 (Tiger) on PowerPC-based machines.
HyperCard declined with the growth of the World Wide Web since the Web could handle and deliver data in a manner similar to HyperCard without being limited to files that existed on the local hard drive. However, HyperCard inspired the creation of HTTP and JavaScript and inspired the creation of ViolaWWW, an early web browser. The pointing-finger cursor that was used for navigating stacks was incorporated in the first web browsers, as the hyperlink cursor. Additionally, the Wiki concept was first used in a HyperCard stack written by Ward Cunningham, the creator of Wiki.
Similar products include HyperNext, HyperStudio, LiveCode, and SuperCard.
Topics related to HyperTalk or HyperCard are the focus of this category.
 
 
Recommended Resources
Hosted by the School of Computer Science and Engineering at California State University at San Bernardino, the sub-page features a handbook on HyperTalk, the programming language of HyperCard, once free on Apple Macintosh machines. Included is an introduction to the language, its basis, data types, Hypercard classes, HyperTalk, and other resources, including code examples and links to external resources related to the language.
http://csci.csusb.edu/dick/samples/hypertalk.html
Featured on the Education Resources Information Center (ERIC) Institute of Education Sciences site, the guide is intended to introduce teachers and students to the use of the HyperTalk programming language, with a focus on extending the power of HyperCard, and to show how HyperCard can be used in conjunction with HyperTalk in an educational setting. A synopsis of the guide, by Sharon Yoder, is featured, including its ISBN and ERIC numbers.
https://eric.ed.gov/?id=ED349938
Folk Stream: Teach Yourself HyperCard
The sub-site is focused on assisting people in learning to create HyperCard stacks and to do so without even typing. For the examples given, the user needs only use a mouse to select the HyperTalk script examples given, cop[y the selection, and paste it into HyperCard. An introduction is given, along with instructions on using HyperCard, creating a stack, and a HyperTalk reference, as well as specific examples, such as scripting a button, using sound and music. And scripting a field.
http://folkstream.com/muse/teachhc/
Help Solve the File Format Problem: HyperTalk
Intended as a repository for information on all manner of file formats and information sets, in the hopes of preventing them from falling into obscurity, losing documentation, and otherwise fading, the site features information on a large variety of topics, including this page on HyperTalk, the programming language that came with Apple Computer's HyperCard. Its origins, development, and uses are given, along with information about modern implementations.
http://fileformats.archiveteam.org/wiki/HyperTalk
The site features a PDF format copy of the manual to CompileIt!, a Hypercard stack that allows users to write HyperCard command plugins that access Mac's system API, as well as a PDF of screenshots of most of the pages of the HyperCard Reference stack that came with HyperCard 2.4, an HTML dump of the MediaTalk documentation included with Oracle Media Objects, and other interviews and talks. Other resources include the Pantechnicon, containing several HyperCard stacks.
http://hypercard.org/
The OSData site began on a small server in the engineering department of Ohio State University and now serves to compare and contrast server operating systems. Its section on HyperTalk and HyperCard features an overview of the scripting language and programming system, created by Apple Computer Company, including the origins, development, purposes, and contributions made by the system..
http://www.osdata.com/topic/language/hypertalk.htm
Ren'Py is a visual novel engine that allows users to create interactive stories, operating on a Python-based scripting language that can be extended with Python. This framework includes the necessary tools to create a HyperCard game in Ren'Py, including custom code for the main menu, save/load, preferences, adventure-mode, and other features, as well as images for the UI, a Photoshop template for creating background images, and an icon set, using a classic Apple typeface (Chicago).
https://egardepe.itch.io/hypercard
The primary focus of Wiki is on people, projects, and patterns in software development, including a history of programming ideas. Its page on HyperTalk, the language of Apple's Mac-only HyperCard programming system discusses the origins of the scripting language, designed by Bill Atkinson, along with its features, development, and non-Apple implementations, known collectively as xTalk. Citations and code examples are given, along with links to additional resources.
http://wiki.c2.com/?HyperTalk