Self tutorial

Urs Hoelzle urs
Thu Jun 27 21:53:06 UTC 1991

For those in the Bay Area:

A practice run of the ECOOP'91 Self tutorial will be held in the first
week of July.  Attendance to the half-day tutorial is free (all
participants will receive a copy of the tutorial materials).  Please
contact me if you are interested.


[For those NOT in the Bay Area: come to the ECOOP tutorial in Geneva!]


Objectives (not more than 50 words):

  To understand Self's object model and inheritance semantics, and the
  rationale behind them; to explore some typical situations where
  Self's flexibility allows simpler solutions than are available in
  more traditional languages like Smalltalk-80 and C++; to discuss
  techniques which allow an efficient implementation of Self.


  Self is an object-oriented language for exploratory programming
  based on a small number of simple yet powerful ideas.  We start the
  tutorial by presenting the design principles underlying Self.  Using
  simple examples, we then demonstrate how easy it is to reuse Self
  code even in situations where more traditional languages like
  Smalltalk stand in the programmer's way.

  The second part of the tutorial covers programming on a larger
  scale, showing how Self programs can be organized in the absence of
  classes.  We also show how inheritance can be used to model concepts
  such as global variables and scoping without introducing extra
  language mechanisms.

  Finally, we address some of the performance implications of the Self
  language model and discuss how very good performance can be achieved
  despite the seemingly costly "everything is a message send" model.

Who should attend: 

  Programmers, students and researchers who are interested in a fresh
  look at object-oriented language design and prototype-based systems;
  anybody who is wondering why it is often harder than expected to
  reuse code in his/her favorite programming language.
Required previous knowledge: 

  Participants are expected to be familiar with the principles of
  object-oriented programming.  Previous experience with Smalltalk-80
  is helpful but not necessary.

More information about the Self-interest mailing list