[ANN] Traits beta2.1 stable kernel
ruben.bakker1 at gmail.com
Sun Mar 13 20:40:29 UTC 2005
I studied some of the documents provided the traits homepage and
played with a beta 2.1 image. My first impression: The traits system
is a very natural extension to Smalltalk, powerful and still easy to
OK, now my first question:
"Answer the receiver multiplied by itself."
^ self * self
In squared we call self * self. I searched for the following method definition:
but couldn't find it... What did I miss in the example?
I suppose "super" is not allowed inside a trait, right? I tried it,
but the compiler didn't give me an error.
On Thu, 10 Mar 2005 15:15:55 +0100, Adrian Lienhard <adi at netstyle.ch> wrote:
> 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.
> 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.)
> 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