LOOPS(ID:1042/loo011)

Lisp Object-Oriented Programming System 


Lisp Object-Oriented Programming System.

Xerox's object-oriented LISP extension, used in development of knowledge-based systems.

Drew on developers experience with frames and OOP from Smalltalk (being developed in the room next door) as well as standard LISPish elements


People:
Structures:
Related languages
KRL => LOOPS   Influence
LISP 1.5 => LOOPS   Extension of
Smalltalk => LOOPS   Influence
UNITS => LOOPS   Influence
LOOPS => CommonLoops   Evolution of
LOOPS => Fm   Based on

References:
  • Bobrow, D. G. & Stefik, M. J. "LOOPS: Data and Object Oriented Programming for Interlisp" view details
          in European AI Conference, Orsay, France. 1982 view details
  • Bobrow, D. G., Stefik, M. The Loops Manual. Knowledge-Based VLSI Design Group Memo KB-VLSI-81-13. January 1983. view details
          in European AI Conference, Orsay, France. 1982 view details
  • Bobrow, D.G., and Stefik, M. J. "Perspectives on Artificial Intelligence Programming" view details
          in Rich, C. & Waters R.C. (Eds.) "Readings in Artificial Intelligence and Software Engineering"Los Altos: Morgan Kaufman Publishers, 1986 view details
  • Bobrow, D.G., and Stefik, M. J. "Perspectives on Artificial Intelligence Programming" pp951-956 view details
          in Science 231:4741, 28 February 1986 view details
  • Stefik, M. and Bobrow, D.G. "Object-oriented programming: Themes and Variations" view details
          in AI Magazine 6(4) Winter 1986. view details
  • Stefik, M. and Bobrow, D.G. "Object-oriented programming: Themes and Variations" view details
          in Peterson, G.E. (ed), Object-Oriented Computing, Volume 1: Concepts, IEEE Computer Society Press, 1987 view details
  • Stefik, M. and Bobrow, D.G. "Object-oriented programming: Themes and Variations" view details
          in Richer, M.H. (ed.) AI Tools and Techniques, Ablex Publishing Corporation, Norwood, New Jersey. view details
  • Stefik, M. Bobrow, D.G., and Kahn, K. Access-oriented programming for a multiparadigm environment view details
          in Proceedings of the Hawaii International Conference on System Sciences, January 1986 view details
  • Stefik, M., Bobrow, D.G., and Kahn, K. "Integrating access-oriented programming into a multiparadigm environment" view details
          in IEEE Software 3(1) January 1986 view details
  • Stefik, M., Bobrow, D.G., and Kahn, K. "Integrating access-oriented programming into a multiparadigm environment" view details
          in Peterson, G.E. (ed), Object-Oriented Computing, Volume 2: Implementations, IEEE Computer Society Press, 1987 view details
  • Stefik, M., Bobrow, D.G., and Kahn, K. "Integrating access-oriented programming into a multiparadigm environment" view details
          in Richer, M.H. (ed.) AI Tools and Techniques, Ablex Publishing Corporation, Norwood, New Jersey. view details
  • Xerox Corporation. XEROX LOOPS reference manual. Technical report, Xerox Palo Alto Research Center, 1988 view details
          in Richer, M.H. (ed.) AI Tools and Techniques, Ablex Publishing Corporation, Norwood, New Jersey. view details
  • Stefik, Mark "Programming Languages -- The LOOPS Project (1982-1986)" Web page at PARC view details Abstract: The LOOPS (Lisp Object-Oriented Language) project was started to support development of expert systems project at PARC. We wanted a language that had many of the features of frame languages, such as objects, annotated values, inheritance, and attached procedures. We drew heavily on Smalltalk-80, which was being developed next door.

    Bobrow and Stefik had done frame languages before (KRL and UNITS, respectively). KRL was one of the first frame languges ever and established the paradigm. Units was part of a doctoral dissertation, was heavily used at Stanford, and was subsequently developed by Intellicorp to become KEE.

    Loops was a multiple-paradigm extension to Interlisp-D. It had

    Object-oriented programming. (Classes and objects, class variables, instance variables, methods, multiple-inheritance, interactive class browsers)

    Access-oriented programming. Nestable active values that can be attached to instance variables. Whenever a program puts a value to an instance variable or gets a value from an instance variable to which active values are attached, procedures specified in the active value are triggered. Active values also enabled attaching lists of property values to instance variables. This was  used for creating audit trails and other things.

    Rule-oriented programming. A simple forward-chaining rule language with facilities for leaving an audit trail via active values.

    External link: Online copy
          in Richer, M.H. (ed.) AI Tools and Techniques, Ablex Publishing Corporation, Norwood, New Jersey. view details