Revised CFP: ECOOP'96 Workshop on Prototype Based OOP - 9 July 1996

James Noble kjx at socs.uts.EDU.AU
Tue Apr 23 11:02:04 UTC 1996

			Call For Participation

		       ECOOP' 96 Workshop WS14

	     Prototype Based Object Oriented Programming

			 Tuesday, 9 July 1996
			    Linz, Austria

In the recent years an alternative to the traditional class-based
object-oriented language model has emerged. In this prototype-based
paradigm there are no classes. Rather, new kinds of objects are
formed more directly by composing concrete, full-fledged objects,
which are often referred to as prototypes. When compared to
class-based languages, prototype-based languages are conceptually
simpler, and have many other characteristics that make them
appealing especially for the development of evolving, exploratory
and/or distributed software systems.

The distinction between class-based and prototype-based systems
reflects a long-lasting philosophical dispute concerning the
representation of abstractions. Plato viewed forms -- stable,
abstract, "ideal" descriptions of things -- as having an
existence more real than instances of those things in the
real world. Class-based languages such as Smalltalk, C++
or Simula are Platonic in their explicit use of classes to
represent similarity among collections of objects. Prototype-based
systems such as Self, NewtonScript, GlyphicScript or Omega represent
another view of the world, in which one does not rely so much on
advance categorization and classification, but rather tries to
make the concepts in the problem domain as tangible and intuitive
as possible. A typical argument in favor of prototypes is that
people seem to be a lot better at dealing with specific examples
first, then generalizing from them, than they are at absorbing
general abstract principles first and later applying them in
particular cases.

Prototypes give rise to a broad spectrum of interesting technical,
conceptual and philosophical issues. Different variations of
prototype-based object-oriented programming exist, and the terminology
in the field is still somewhat diverse. The best known prototype-based
programming language is Self, but there are many other interesting
languages, as discussed in recent conference papers and panel

In this workshop we examine the state-of-the-art in prototype-based
object-oriented programming, focusing especially on the following
question: how to make the prototype-based paradigm ready for the
prime-time, i.e., to match/exceed the requirements and expectations
of larger-scale, industrial software developers. Topics to be
potentially discussed in the workshop include, but are not limited to:

 * different models of prototype-based programming,
 * experiences in implementing prototype-based systems,
 * experiences in using prototype-based systems,
 * guidelines, idioms and patterns for programming with prototypes,
 * analysis and design techniques for the development of prototype-based
 * research directions for prototype-based programming.

Potential workshop participants are requested to contact the
organisers by email, and to submit a short paper (2-5 pages) by May 31
(revised date) to the address below (e-mail in PostScript or ASCII
format is preferred).

     Antero Taivalsaari 
     Nokia Research Center 
     Software Technology Laboratory 
     P.O. Box 45 
     00211 Helsinki, FINLAND 
     taivalsa at

Participants reporting on experience are invited to indicate if they
want to provide a short (less than 15 min) demonstration or videotape
to illustrate their report in the workshop.

Attendance to the workshop will be limited to approximately 20 participants
to enable fruitful discussion.


     Antero Taivalsaari 
     Nokia Research Center 
     Software Technology Laboratory 
     P.O. Box 45 
     00211 Helsinki, FINLAND 
     taivalsa at
     James Noble
     School of Computing Sciences 
     University of Technology, Sydney 
     Box 123 Broadway, NSW 2007 
     kjx at 

More information about the Self-interest mailing list