Last updated at 10:21 pm UTC on 1 January 2007
Very cool work by the guys at Universitat Berne - Institut fur Informatik und angewandte Mathematick, and Andrew Black at OGI School of Science and Enginering, on a simpler, clearer way of providing mixin/multiple-inheritance benefits without their drawbacks.
The research group is called the Software Composition Group (Traits). The main Traits page at SCG, with downloadable papers, is here: http://www.iam.unibe.ch/~scg/Research/Traits/.
Also, there is a detailed discussion of an early prototype
Status update, 6 Sept, 2005.
There have been discussions on including Traits in 3.9. There have been no real arguments against inclusion of Traits, and many supporters. The intent is now to merge it in as soon as it is ready.
What is missing for Traits to be included?
- Currently Traits can only be loaded into existing Squeak images through a problematic process that overrides various system methods, causing mysterious bugs. Since inclusion in the image these days means loading/merging as an MC package, there is some repackaging work to do. This is being worked on by SCG, Andrew Black and myself (Daniel Vainsencher), and we can't use help at the moment. However:
- In the mean time, there is an image people can start from at: http://www.cs.pdx.edu/~danielv/TraitsBeta3.02.tgz. In this version you are quite welcome to try things out and report bugs in Mantis.
- There will be much more to do once I release another version, I'll update this page then.
Status update, 15-DEC-2005
There is now ready a Squeak 3.9a image with traits included. It may be downloaded from http://www.adrian-lienhard.ch/files/Squeak3.9a-traits.zip. (Description)
There are examples how to make use of traits on SqueakMap.
The latest status page is out of date. Traits is part of Squeak 3.9. -Lex Spoon