Glyphic Script(ID:2269/gly001)

Prototype based scripting language 


Prototyped oo language by Mark Lentczner from Glyphic Technology

Used in the Go environment, and developed within the Codeworks environment

Although prototyped, it maintained the idea of a class. (ref Roesch?)


Related languages
Self => Glyphic Script   Influence

References:
  • Schwartz, Bruce and Lentczner, Mark "Direct programming using a unified object model" Addendum to the proceedings, Conference on Object Oriented Programming Systems Languages and Applications (OOPSLA 92) Vancouver, British Columbia, Canada pp237 1992 view details DOI External link: Archived version at Wayback Abstract: Glyphic Technology has created a small, yet powerful programming environment and language combining the techniques of Direct Programming and Unified Object Models. The work is a result of research into providing programming systems that are flexible enough to be used in both novice and expert situations.
    Direct Programming environments are highly interactive, in which the structures of program objects are built graphically, and their behavior is programmed incrementally. They offer the user the programming equivalent of a WYSIWYG text processor.

    Such environments have become popular in recent years: HyperCard and Visual Basic are two examples. While excellent for simple applications, these existing environments were not built on formal object models and so are difficult or impossible to use for moderate to complex tasks.

    We have found that a Unified Object Model is a good match to the user needs and expectations of Direct Programming systems. A Unified Object Model unites the concepts of classes and objects: any object can be used as a prototype (class) and any object can have new behavior attached to it. This model provides power with minimal constructs and makes all program entities concrete and accessible for the user. For example, even the prototypes can have graphical views.

  • Glyphic Technology, "Glyphic Codeworks(tm) Scripting". Unpublished manual (1994). view details Extract: Archived version at Wayback
  • Lentczner, Mark "Glyphic Script" view details Extract: Glyphic Script
    Glyphic Script [...] is the result of two years of effort to create a small portable, and practical development environment and language. Our primary goals were directness of the programming process and power of the programming language. Early on, we felt that prototypes would enable us to reach these goals more quickly and easily.
    In Glyphic Script, an object consists of a number of properties which may be variables or methods. Any object can serve as the parent (or "class" or "prototype") of other objects. This is a single inheritance model where properties of a parent may be inherited by its children. Inheritance is seen as an organizing tool for the programmer, not as a pure type abstraction mechanism. The object model has two/types of copying: the "new" operation to create an instance and the "copy" operation to create a peer. Through property "scopes" the object has control over what is copied, what is shared and what is inherited by the objects created with these operations.
    Extract: Conclusion
    Conclusion
    Glyphic Script has shown itself to meet its goals as a direct and powerful language. It owes much of that success to the choice of prototypes for its object model. However, it did not abandon the concept of class in the process. We hope that Glyphic Script helps show that prototypes are not just conceptual curiosities, but a powerful concept for the next generation of practical languages. Extract: Keeping Classes
    Keeping Classes
    We never found the need to remove the concept of class from the system: The concept of class works well as an organizing principle in libraries and programs. While the development environment and libraries talk of classes, these are really prototype objects and the language semantics do not treat them any differently. Instead of eliminating classes, Glyphic Script demystifies them and makes them truly regular object.
          in Smith, Randall B (moderator) "Prototype-based languages (panel): object lessons from class-free programming" OOPSLA 94 pp102-112 view details
    Resources
    • The sad story of Glyphic Script's demise
      In the Spring of '92 Glyphic Technology set out on a mission to create a new kind of programming environment. Based on the idea of direct programming, where the program's data is directly manipulatable on the screen, we created the Codeworks programming environment and the Glyphic Script language. By the Summer of '92 we had a fully functional version running on the Macintosh platform.external link
    • Archived version of Codeworks
      Codeworks is a new object-oriented development environment that makes creating visual, interactive applications what it should be: visual and interactive. It is based on the simple idea that you are more concerned with what your program does than with the tedious and time consuming "glue" routines that other environments make you write.

      Codeworks was born out of the desire to have an environment for programming that combined the ease of interactive development environments like HyperCard and VisualBasic, with a powerful programming language like Smalltalk. Added to this was the desire to have the whole system be very small and portable.

      Glyphic Technology is now working in several different directions to bring Codeworks to the world. A project with Apple Computer is incorporating the system with the World Wide Web. Another project is looking to bring new scripting system for users of Mac, Windows and UNIX/X11 systems. Because of its small size and portability, Codeworks can be easily incorporated into a wide variety of environments and products. Contact us for more information.
      external link