ZOG (hypertext)

ZOG was an early hypertext system developed at Carnegie Mellon University during the 1970s by Donald McCracken and Robert Akscyn. ZOG was first developed by Allen Newell and George G. Robertson to serve as the front end for AI and Cognitive Science programs brought together at CMU for a summer workshop. The ZOG project was as an outgrowth of long-term artificial intelligence research led by Allen Newell and funded by the Office of Naval Research. A second version of ZOG was installed as the key interface between users and logistics on the Nimitz class carrier USS Carl Vinson in 1983.

Composition
ZOG consisted of "frames" that contained a title, a description, a line containing ZOG system commands, and selections (menu items) that led to other frames. ZOG pioneered the "frame" or "card" model of hypertext later popularized by HyperCard. In such systems, the frames or cards cannot scroll to show content that is part of the same document but held offscreen. Instead, text that exceeds the capacity of one screen must be placed in another (which then constitutes a separate frame or card)

The ZOG database became fully functional around 1977. Beginning in 1980, ZOG was ported from DEC VAX version (written in an experimental language called "L*") to the Pascal-based Three Rivers PERQ workstation and was used for a shipwide local area network on the American aircraft carrier USS Carl Vinson. In 1981, Rob Akscyn and Donald McCracken, two principals from the ZOG project, founded Knowledge Systems to develop and market a commercial follow-on to ZOG called KMS ("Knowledge Management System").

Syntax
An example of syntax from one dialect of ZOG:  This TITLE line summarizes the frame's contents

This TEXT expands the frame's main point of information, but is sometimes omitted. The OPTIONS below are used to point to subordinate sections or to provide an enumerated expansion of the main topic. LOCAL PADS do not have the connotation of leading to deeper detail, but rather to tangential points such as related material in another document or database. Invoking programs is another function typically reserved for LOCAL PADS. At the bottom of the frame is a set of general functions called GLOBAL PADS, which are available in every frame.

1. This OPTION leads to another frame 2. Options are often used like subpoints in an outline 3. -This option leads nowhere (indicated by the minus sign at the front)