Smalltalk-80 Version Management Using Hypertext
Chan Lee, Norm Delisle
CR-86-54
The lack of an efficient version managing capability
in the current Smalltalk-80 system causes problems
in source and change maintenance, crash recovery and
sharing developed source code. This report describes
a prototype Smalltalk version management system which
attempts to improve the current Smalltalk programming
environment by furnishing integrated version managing
capabilities based on a Hypertext design information
system. The prototype system provides a complete
version history through a Version Browser presenting
an unified view on changes and source code in the frame
of Smalltalk-80's hierarchical information structure.
Using the prototype, a Smalltalk programmer can browse
a categorized version history, can view text differences
between versions, and can cope with unexpected events
such as source code conflicts and system crashes.
Fully developed, the system will support multi-person
programming efforts.
In Search of Good Smalltalk Programming Style
Roxanna Rochat
CR-86-19
The increasing numbers of Smalltalk programmers and
increasing diversity of Smalltalk programming styles
prompts the need for stylistic guidelines. A set of
stylistic guidelines for the Smalltalk-80 language have
been collected and are presented with proposed tools to
support them. These guidelines are not intended as a
standard, but rather as an initial framework to make
Smalltalk programmers more conscious of their
programming style and serve as a starting point for
further discussions.
Inheritance Mechanisms for Smalltalk-80
Brian Wilkerson
CR-86-57
Smalltalk-80 classes are arranged in a hierarchy (tree)
with each class inheriting from its superclass
(parent). The linearity of this approach limits the
degree of abstraction allowed in the language. A
system known as multiple inheritance has been designed
to overcome this problem within Smalltalk by allowing
classes to have more than one superclass. Other
languages that allow an object-oriented style of
programming (such as Loops and Flavors) have also
defined non-linear inheritance mechanisms. This paper
examines some of the issues involved in the design and
implementation of non-linear inheritance mechanisms for
Smalltalk, especially the issues related to method
inheritance and combination.