Squeak is a very flexible environment and allows programmers to employ techniques such as exploring different programming paradigms.
Research projects using Squeak
Serge Stinckwich's LSCTalk is a learning classifier system platform for multi-agent learning.
Classboxes is a module system for object-oriented languages that allows method addition and replacement.
Traits are simple composition mechanisms for structuring object-oriented programs.
Noury Bouraqadi's MetaclassTalk is a reflective extension of Smalltalk that provides programmers with a meta-object protocol (MOP) to control objects structure (memory allocation and access to instance variables) and behavior (message sends and receptions and method lookup and application). It aims at easing experiments of new concepts, programming pradigms and langage extensions.
Robert Hirschfeld has developed AspectS, an extension to the Squeak environment to enable Aspect-Oriented programming. PerspectiveS, which is built on top of AspectS, introduces dynamic layers of behavior into the Squeak environment.
Another project from Noury Bouraqadi and team is the FracTalk system, which is a Smalltalk implementation of the Fractal Component Model.
The QuA Project has prototyped a software component architecture in Squeak to support component-based development of real-time and multimedia applications.