[ANN] AspectS (0.4.1)
phiho.hoang at rogers.com
Sun Apr 21 08:49:11 UTC 2002
Thanks for your AspectS. I have not used it for anything yet,
but I have a feeling that this is a very powerful and precise tool.
It was mentioned on this list that AspectS can be an excellent
tool for modularizing Squeak, would you like to comment on this
In your paper, you said 'crosscutting is inherent to complex
Do you think that AspectS itself is a complex system ?
If so, do you think that AspectS can be improved if you use
AspectS to 'aspectize' AspectS itself ?
This brings to the question, how would you bootstrap AspectS
with some builtin features in Squeak to make AspectS itself more modular
(?) or bringing the benefit of Aspect to earlier objects. BTW, do you
plan to support module, make AspectS module aware ?
In your document you said:
'in its current implementation, AspectS is realized
without changing neither Smalltalk's syntax nor its virtual machine.
AspectS shows great flexibility by not relying on code transformations
(neither source nor byte code) but making use of metaobject composition
Does this imply that AspectS can be implemented differently by
modification in Squeak's syntax and/or its virtual machine.
I can see the power and elegance of AspectS based on an existing
image. Say, if the GNU Smalltalk people want to add support for AspectS,
what would be the best approach they should take as far as the compiler
and builtin primitives are concerned. Is 'MethodWrapper' the core of
I am learning AspectS and enjoying it. Please keep up with your
work on AspectS.
From: squeak-dev-admin at lists.squeakfoundation.org
[mailto:squeak-dev-admin at lists.squeakfoundation.org] On Behalf Of Robert
Sent: Thursday, April 11, 2002 3:42 AM
Subject: [ANN] AspectS (0.4.1)
There is an updated version of AspectS (0.4.1).
Besides several small fixes and enhancements, there is a new
example that illustrates how to use AspectS to introduce
different perspectives on the system, depending on different
contexts. The example implements the AspectS tool support,
previously done via subclassing of existing browser and
support classes, now as an additional layer on top of the
browser and support classes. The tools aspect is, amongst
other characteristics, sensitive to projects as its context:
To create a tools aspect instance:-
aspect _ AsAspectToolsAspect new.
To install an aspect:-
To make the tools aspect aware of a certain project:-
aspect addProject: (Project named: 'Test').
aspect addProject: Project current.
To make the tools aspect unaware of a certain project:-
aspect removeProject: Project current.
aspect removeProject: (Project named: 'Test').
To uninstall the aspect:-
aspect _ nil.
The new version (a change set and pre-configured image) is available at
Comments are welcome.
More information about the Squeak-dev