Hello,
I will defend my Ph.D. on Monday 21 November, at 10:00. I would like
to invite you all to participate. The defense will be help in room
003 in the IWI building on Engehaldestrasse 8, in Bern, and is
scheduled to last until 11:30.
After, an apero will take place in the Cafeteria.
Where this event will be located:
http://www.iam.unibe.ch/~scg/Resources/Maps/index.html.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Title: Classboxes -- Controlling Visibility of Class Extensions
Abstract:
Unanticipated changes to complex software systems can introduce
anomalies such as duplicated code, suboptimal inheritance
relationships and a proliferation of run-time downcasts. Refactoring
to eliminate these anomalies may not be an option, at least in
certain stages of software evolution. A class extension is a method
that is defined in a module, but whose class is defined elsewhere.
Class extensions offer a convenient way to incrementally modify
existing classes when subclassing is inappropriate. Unfortunately
existing approaches suffer from various limitations. Either class
extensions have a global impact, with possibly negative effects for
unexpected clients, or they have a purely local impact, with negative
results for collaborating clients. Furthermore, conflicting class
extensions are either disallowed, or resolved by linearization, with
subsequent negative effects.
To solve these problems we present classboxes, a module system for
object-oriented languages that provides for behavior refinement (i.e.
method addition and replacement). Moreover, the changes made by a
classbox are only visible to that classbox (or classboxes that import
it), a feature we call local rebinding.
We present an experimental validation in which we apply the classbox
model to both dynamically and statically typed programming languages.
We used classboxes to refactor part of the Java Swing library, and we
show two extensions built on top of classboxes which are (i) runtime
adaptation with dynamically classboxes and (ii) expressing
crosscutting changes.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
More info on classboxes:
http://www.iam.unibe.ch/~scg/Research/
Classboxes/index.html
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.iam.unibe.ch/~bergel
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
choose-news(a)iam.unibe.ch is a *moderated* mailing list for announcing
non-commercial events related to Object Technology in Switzerland.
Please send announcements to be posted to: choose-news(a)iam.unibe.ch
To unsubscribe, please send the message "unsubscribe choose-news" to:
Majordomo(a)iam.unibe.ch
To learn more about SI and CHOOSE, see:
http://www.choose.s-i.ch/