[ANN] Traits beta2.1 stable kernel

Adrian Lienhard adi at netstyle.ch
Thu Mar 10 14:15:55 UTC 2005


Hi all,

This release of Traits on SqueakMap is supposed to serve as  a first 
demo for people who want to try out Traits and have a look at the 
implementation. It also includes the implementation of the class 
Complex as a simple example of using Traits.

Please see the version comment below for more information.

Adrian


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:
http://www.iam.unibe.ch/~scg/Research/Traits

Installation
------------
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.)


Getting Started
---------------
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 still many features missing that are absolutely essential 
for getting the real "traits experience", but these are mainly related 
to the UI and IDE. For example:
   - 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




More information about the Squeak-dev mailing list