* Prerequisite package: Monticello *
Traits Release beta2.1 for Squeak3.7
In this version the new language kernel featuring Traits is refactored/bootstrapped. We consider the kernel being complete and stable (gamma).
Features concerning the user interface, especially the code browser, that are crucial for getting the real "traits experience" are in work and are not contained in this release. To be able to already use Traits there is a basic traits browser which is based on OmniBrowser (World menu-open-Traits Browser).
This release now also contains a very simple example of Traits: the implementation of Complex which was refactored to share a trait with the class Number to avoid code duplication.
Please find more information and papers about Traits at:
The implementation is available as a SAR file on SqueakMap. It is tested in a new fresh 3.7 image. Prerequisite package is Monticello.
Please note, that the installation takes about 30 Minutes (depending on the speed of your machine) because it needs to recompile all the classes in the image. (This is a consequence of the fact that we had to change the format of the kernel classes.)
Open the Traits OmniBrowser: World Menu - open - Traits Browser
Create a new trait: Open the context menu in the class/trait pane and select "create trait..."
UI Limitations of this release
- There are no virtual categories that present the conflicts and glue methods of a composite class/trait.
- There is no automatic computation of requirements
- There is no information that shows which traits/classes provide or require the currently selected methods
- There is no support for turning classes into trait