H ? « »

Language peer sets for Self:
United States
United States/1987
Designed 1987
1980s languages
Fifth generation
Late Cold War
Genus Prototyping
Specialised Languages
Prototyping
Object-oriented
Generic
Prototyping/1987
Object-oriented/1987
Generic/1987
Prototyping/United States
Object-oriented/United States
Generic/United States
Specialised Languages
Specialised Languages/1987
Specialised Languages/us

Self(ID:1361/sel006)

Prototyping OOPL 

alternate simple view
Country: United States
Designed 1987
Published: 1987
Genus: Prototyping
Sammet category: Specialised Languages


Small, dynamically-typed object-oriented language, based on prototypes and delegation. Objects may inherit state, and dynamically change their patterns of inheritance. Threads.


OOL for exploratory programming based on a small number of simple and concrete ideas: prototypes, slots, and behavior. Designed for expressive power and malleability. SELF combines a pure, prototype object model with uniform access to state and behavior. Unlike other languages, SELF allows objects to inherit state and to change their patterns of inheritance dynamically.  

Developed by Sun Microsystems and Stanford University and made available by the SELF Group in 1995.

Sun is no longer involved with the SELF project.  



Places
People:
Structures:
Related languages
O Self   Influence
Smalltalk Self   Influence
Self CECIL   Influence
Self Dylan   Influence
Self Glyphic Script   Influence
Self Kevo   Influence
Self Klone   Incorporated some features of
Self NeoLogo   Influence
Self Newton Script   Influence
Self Self-91   Evolution of
Self Us   Augmentation of

References:
  • David Ungar and Randy B. Smith (1987) David Ungar and Randy B. Smith "Self: The Power of Simplicity" Abstract Extract:
          in [OOPSLA 1987] (1987) SIGPLAN Notices 22(12) December 1987 (OOPSLA '87)
  • Lieberman, Henry; Stein, Lynn and Ungar, David (1987) Lieberman, Henry; Stein, Lynn and Ungar, David "Treaty of Orlando" pp43-44 DOI Extract: Of Types and Prototypes: The Treaty of Orlando
          in [OOPSLA 1997] (1988) SIGPLAN Notices 23(05) May 1988 ('OOPSLA '87: Addendum to the proceedings)
  • Lee, E. (1988) Lee, E. "Object Storage and Inheritance for SELF, a Prototype-Based ObjectOriented Programming Language". Engineer's thesis, Stanford University
          in [OOPSLA 1997] (1988) SIGPLAN Notices 23(05) May 1988 ('OOPSLA '87: Addendum to the proceedings)
  • Chambers, C., and Ungar, D. (1989) Chambers, C., and Ungar, D. "Customization: Optimizing Compiler Technology for SELF, a Dynamically-Typed Object-Oriented Programming Language"
          in [PLDI 1989] (1989) Proceedings of the SIGPLAN '89 Conference on Programming Language Design and Implementation (PLDI 89)
  • Chambers, C., Ungar, D., and Lee, E. (1989) Chambers, C., Ungar, D., and Lee, E. "An Efficient Implementation of SELF, a Dynamically-Typed Object-Oriented Language Based on Prototypes" pp49-70
          in [SIGPLAN] (1989) SIGPLAN Notices 24(10) October 1989 incorporating the Proceedings of the Conference on Object Oriented Programming Systems Languages and Applications, New Orleans (OOPSLA 89)
  • Chambers, C., Ungar, D., Chang, B., and Hölzle, U. (1989) Chambers, C., Ungar, D., Chang, B., and Hölzle, U. "Parents are Shared Parts of Objects: Inheritance and Encapsulation in SELF"
          in (1989) Journal of Symbolic Computation, 8, 1989
  • Tylutki, G. (1990) Tylutki, G. "What Good is self?" pp77-??
          in (1990) Computer Language Magazine 7(11)
  • Chambers, C. (1992) Chambers, C. "The design and implementation of the SELF Compiler, an optimizing compiler for objectoriented programming languages," Report number STAN-CS-92-1420, Department of Computer Science, Stanford University, March 1992 Abstract
          in (1990) Computer Language Magazine 7(11)
  • Ungar, David (1994) Ungar, David "Self" Extract: The language self
          in Smith, Randall B (moderator) (1994) Smith, Randall B (moderator) "Prototype-based languages (panel): object lessons from class-free programming" OOPSLA 94 pp102-112
  • Smith, Randall B.; Maloney, John; Ungar, David (1995) Smith, Randall B.; Maloney, John; Ungar, David "The Self-4.0 user interface: manifesting a system-wide vision of concreteness, uniformity, and flexibility" Proceedings of the tenth annualConference on Object Oriented Programming Systems Languages and Applications Austin, Texas, United States pp47-60 1995 Abstract DOI
          in Smith, Randall B (moderator) (1994) Smith, Randall B (moderator) "Prototype-based languages (panel): object lessons from class-free programming" OOPSLA 94 pp102-112
  • Ungar, David (1995) Ungar, David "Annotating objects for transport to other worlds" pp73-87 Abstract DOI Extract: Introduction Extract: What is a module? Changes or Pieces Extract: What belongs to a module? Objects or slots? Extract: Maintaining Identity: Reference vs. Creation Extract: When Does Identity Matter? Extract: "Classes" in Self: Inheriting Structure
          in [OOPSLA 1995] (1995) SIGPLAN Notices 30(10) ACM Press, October 1995 (Proceedings of the 10th Annual Conference on Object-Oriented Programming: Systems, Languages and Applications (OOPSLA'95))
  • Moore, Ivan (1996) Moore, Ivan "Restructuring of Self programs"
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • (1996) Noble, James - report on Ivan Moore's presentation of Guru Abstract
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • (1996) Noble, James - report on James Nolbe's presentation on Self encapsulators Abstract
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • (1996) Noble, James - report on Mario Wolczko's presentation of an implementation of Smalltalk in Self 4.0 Abstract
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • (1996) Noble, James - report on Randall Smith's presentation of Us Abstract
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • Noble, James (1996) Noble, James "Encapsulators in Self"
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • Smith, Randall (1996) Smith, Randall "The Subjective Prototype" Extract: The subjective prototype
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
  • Wolczko, Mario (1996) Wolczko, Mario "Self includes: Smalltalk"
          in Cointe, P. (1996) Cointe, P. editor, Proceedings of the Ninth European Conference on Object-Oriented Programming (ECOOP), July 1996. LNCS 1098, Springer-Verlag
    Resources
    Search in: Google  Google scholar  World Cat  Yahoo  Overture  DBLP  Monash bib  NZ  IEEE  ACM portal  CiteSeer  CSB  ncstrl  jstor  Bookfinder