SK8 - The Story of SK8

The Story of SK8

The SK8 project was created by Ruben Kleiman when he joined Apple in 1987. He came to Apple wishing to develop a highly flexible, object-oriented user interface and multimedia development environment which could be used to create not only applications, but also high-level development environments suitable for any specific domains (e.g., training, games, planning and scheduling, accounting and finance, music theory and performance). In addition, Ruben wanted to implement this on a Macintosh, which at that time supported a maximum of 8MB main memory. The name of the project probably derived from his interest in skateboarding.

Apple was the ideal place to start this work. HyperCard, with its direct manipulation interface and scripting language, was about to ship. While HyperCard was great for simple applications built by end users, it was too restrictive for professional programmers to use and its programming paradigm (i.e., stacks of cards) was fixed. One of the guiding questions for SK8 was how to extend these benefits to the wider programming community.

The first part of the work was devoted to developing a powerful, yet simple object system. The result was MacFrames, a very rich and powerful frame/object system. The main research focus was flexibility: to allow experimentation with object models in order to find an optimal object kernel for SK8. MacFrames was so flexible that by setting a myriad of preferences it was used to emulate a large variety of object systems, including IntelliCorp's KEE. This research, in concert with users developing actual applications and prototypes at Apple, yielded the simple and elegant model that is in SK8 today.

With this version of the object system in place, we started to work on the graphics and UI side of the system. The early SK8 graphics system used a metaphor slightly extending HyperCard (e.g., cards but with multiple layers instead of single fixed backgrounds). Around this time, the original version of SK8Script, a prototype for the first specification of the AppleScript language, was extended to a fully object-oriented scripting language based on the SK8 object model. A number of researchers in the Advanced Technology Group began to use SK8 for their projects, providing timely and intimate suggestions to improve the system. Certain universities and corporation fans began to participate: they either used SK8 as a research tool or examined it to provide detailed feedback to us.

In 1992 and 1993, to incorporate the necessary design changes while maintaining the system's elegance, we re-implemented SK8 from the ground up, resulting in the current SK8 architecture. The object system was reimplemented by manipulating the kernel of the newly acquired Macintosh Common Lisp. The graphical library and event systems now used a containment approach and conventions based on generally useful defaults. The SK8Script debugger was completed and the compiler and runtime performance improved. An object store was added to the system. The SK8 Project Builder was created to provide a very rich set of direct manipulation tools, including tools for building browsers by visual means (e.g., wiring components, expression constraints by sliders and knobs).

Read more about this topic:  SK8

Famous quotes containing the word story:

    The unread story is not a story; it is little black marks on wood pulp. The reader, reading it, makes it live: a live thing, a story.
    Ursula K. Le Guin (b. 1929)