You are invited to attend the defense of my Ph.D. entitled:
"Traits -- Composing Classes from Behavioral Building Blocks"
(thesis abstract below)
The defense will take place on Thursday, February 3rd, 2005 at 11:00,
room 002 in the IWI building (Engehaldenstrasse 8).
After the defense, we will share a light lunch at the Cafeteria in
building S14 (Schutzenmattstrasse 14). If you plan to join us for lunch,
please let me know as soon as possible so that I can make sure there
will be enough food.
Inheritance is well-known and accepted as a fundamental mechanism for
reuse in object-oriented languages. Unfortunately, the main variants
single inheritance, multiple inheritance, and mixin inheritanceall
suffer from conceptual and practical problems related to software reuse
and robustness with respect to changes.
In a first part of this thesis, we identify and illustrate these
problems. To overcome these problems, we then present traits, a simple
compositional model that extends single inheritance. A trait is
essentially a (parameterized) set of methods; it serves as a behavioral
building block for classes and is the primitive unit of code reuse. We
develop a formal model of traits that establishes how traits can be
composed to form other traits or classes, and we describe how we
implemented traits in Squeak Smalltalk by bootstrapping a new language
kernel. We present our experimental validation in which we apply traits
to refactor parts of the Smalltalk kernel and library, and we develop a
programming methodology around the usage of traits and the trait
browser, the tool that we implemented to take full advantage of the
availability of traits in the Squeak programming environment.
CH-4900 Langenthal, Switzerland
Phone private: +41 62 922 61 21
Phone office: +41 31 631 35 47
choose-news(a)iam.unibe.ch is a *moderated* mailing list for announcing
non-commercial events related to Object Technology in Switzerland.
Please send announcements to be posted to: choose-news(a)iam.unibe.ch
To unsubscribe, please send the message "unsubscribe choose-news" to:
To learn more about SI and CHOOSE, see: http://www.choose.s-i.ch/