GRASS(ID:4146/gra028)


for GRAphics Symbiosis System

Ohio State Tom DeFanti 1972

interactive graphics description language based on BASIC

re references:
GAIN = Grass Assisted INstruction
The Circle Habitat is the instructional environment at University of Illinois at Chicago Circle



Related languages
BASIC => GRASS   Extension of
GRASS => ZGRASS   Implementation

References:
  • DeFanti, Tom, et al. "Computer Graphics as a Way of Life" view details
          in Computers & Graphics 1(1) May 1975 view details
  • De Fanti, Tom "The digital component of the circle graphics habitat" pp195–203 view details
          in [AFIPS] Proceedings of the 45th National Computer Conference 1976 view details
  • Towle, T. and DeFanti, T. "GAIN: An interactive program for teaching interactive computer graphics programming" pp54–59 view details Abstract: Recent trends in the manufacturing and sales of home computers indicate that a new form of instruction must be developed for teaching programming in the home. Students learn programming from interacting with computers and other students in a classroom setting. The home user may not have this option. Manuals do not teach; they are good for looking up information you have forgotten. Workbooks and textbooks do not have a structure conducive to teaching—you have to understand everything before you can figure out “undiagnosible syntax error” or “OC4.” An approach has been developed at UICC which uses sophisticated error handling and modest program verification to supervise the beginning user while he/she is constructing and executing computer graphics programs. New, inexperienced computer users are now doing interesting (to them) programs within a half hour. This “interactive workbook” concept will be expanded and is currently a working prototype of a teaching package to be available on a home computer graphics/color TV system next year. Extract: Introduction
    Self instructional texts for languages such as BASIC are used at the University of Illinois at Chicago Circle to teach the operation of the Graphics Symbiosis System (GRASS). This Grass Assisted INstruction (GAIN) Program will be described following a brief description of the GRASS system. Special emphasis will be placed on the method of introducing non-programmers to computer use and the built-in error handling and program verification features.
    Although GAIN was designed to teach GRASS, we feel that it is a valid prototype for a program to be used on a home computer system. GAIN resolves many of the difficulties encountered in the home learning situation. First, it is available on demand and it requires no equipment other than the computer system. GRASS, unlike FORTRAN, BASIC and others, allows a supervisory program to be written which can handle the problems encountered by new users. Of equal importance is the ability of GAIN to provide a structured situation in which the learner can get past those first few hours of programming. A new user's success or failure during these first few hours often determines whether he will continue to remain interested in learning programming. And, although GAIN does not teach highly sophisticated programming techniques, it does introduce the learner to several fundamental notions such as the use of variables, programmed loops, and conditional statements. GAIN can make this introduction sucessful and productive. The new user will very quickly be creating programs which are powerful and, because graphics are involved, beautiful.
          in Phillips, Richard L. editor, Computer Graphics (SIGGRAPH 78 Conference Proceedings), volume 12, ACM SIGGRAPH, August 1978 view details
  • ARS ELECTRONICA 1992 "SANDIN IMAGE PROCESSOR" view details Extract: Circle Graphics Habitat and Zbox
    Dan Sandin came to UICC from the University of Wisconsin in 1971 and developed the Sandin Image Processor. He was joined the next year by ( now EVL co-director) Tom DeFanti, who had developed the Graphics Symbiosis System (GRASS) as part of his PhD work with Chuck Csuri at the CGRG at Ohio State. Together, they organized the Circle Graphics Habitat, which became an environment for experimental computer graphics, video production, and educational materials development.

    Some of the most important early work at the Habitat revolved around the Z Box project, which resulted in the development of ZGRASS. ZGrass was made for the Z-80 processor, a CPU from Zilog that had a superset of the Intel 8080 instructions. In the words of Jane Veeder, it provided "...real time animation and real time sound synthesis accessed by a custom language optimized for interactive artmaking, all wrapped up together like a hot little sports car." The box had an NTSC video output port, which provided video recording and display capabilities for artisits. DeFanti et al attempted to commercialize the product through their company, Real Time Design, Inc External link: online copy
          in Phillips, Richard L. editor, Computer Graphics (SIGGRAPH 78 Conference Proceedings), volume 12, ACM SIGGRAPH, August 1978 view details
  • May, Stephen Forrest "Encapsulated Models: Procedural Representations for Computer Animation" PhD OSU 1998 view details Abstract: This research defines the term “encapsulated model” or “emodel.” An encapsulated model is an animated object containing an integrated set of dynamic attributes — e.g., shape, motion, materials (surface properties), light sources, cameras, user interfaces, sound — represented by a procedural data format (i.e., a program written in a procedural animation language).
    A set of properties that characterizes encapsulated models is presented. From these properties, a set of requirements for an appropriate procedural animation language is derived. Chief among these requirements is the requirement for mechanisms that permit interactive manipulation of the procedural specification of an  emodel. To satisfy this requirement, a new programming language mechanism called “articulation functions” (or “afuncs”) is proposed.
    To demonstrate the practical application of the concepts in this research, a prototype procedural animation language, called AL, was developed. The AL language incorporates the best features of previous animation languages and includes several new features including
    the articulation function mechanism. The AL software environment includes an AL language interpreter and graphical user interface tools for interactive manipulation of encapsulated models via articulation functions.

    The results of this research are given in the form of working examples of encapsulated models that can be manipulated in real-time using current workstation technology. These examples demonstrate that articulation functions are a more powerful and general mechanism for interactive animation and manipulation than previously developed  mechanisms.

    Further, these examples illustrate the benefits of encapsulated models over existing, static data formats. In particular, emodels are shown as an enabling technology for the (possibly commercial) exchange of models that are parameterized (i.e., reusable), have high-level interactive controls, and have self-contained, integrated components such as animation and modeling. These traits potentially lead to reduced costs in the production of photorealistic
    computer animation. Extract: Description
    GRASS
    The Graphics Symbiosis System (GRASS), by Tom DeFanti, was a pioneering animation system in two ways. First, it was one of the first truly interactive animation systems. Second, a fundamental premise in the development of this system was that inexperienced users such as artists and educators should be able to develop computer graphics interactively without the constant assistance of computer programmers.
    The GRASSsystem has two types of primitives: pictures and commands. Pictures are named lists of 3D vector endpoints. Commands specify picture endpoints and operations on pictures such as translation, scale, and rotation. GRASScommands can be typed in and immediately executed so that the user can quickly view the result. Arguments to commands can contain numbers, expressions, or be attached to hardware devices (e.g., joysticks, dials) so that pictures can be moved and modified interactively. Macros can be developed for more sophisticated programs. The language supports control flow constructs including conditional execution.
    GRASS was later extended to ZGRASS which includes additional facilities for manipulating and playing back image sequences.

          in Phillips, Richard L. editor, Computer Graphics (SIGGRAPH 78 Conference Proceedings), volume 12, ACM SIGGRAPH, August 1978 view details