[aosd-discuss] dynamic role switching

Stephan Herrmann stephan at cs.tu-berlin.de
Wed Dec 8 16:45:47 EST 2004


Hi,

I'm happy to see the recent interest in role modeling and role programming.
I'd like to point you to another language with support for roles and collaborations: 
 ObjectTeams/Java (see http://www.ObjectTeams.org)

If you wonder, how Object Teams compares to the other models mentioned before,
here is a first comment on similarities:

+ Object Teams and Caesar share many properties, which should not surprise,
  since both share some common roots and evolved in part from joint discussions.
  Currently, Object Teams and Caesar are subject of the joint research project
  TOPPrax (www.topprax.de).
  
+ EpsilonJ -- though not directly connected to Object Teams -- looks 
  _surprisingly_ similar. Consider these translations:
  context -> team
  requires -> playedBy
  method import -> callout method binding
  method export -> callin method binding
  At a first glance, these translations might suffice to transform an EpsilonJ
  program into an ObjectTeams/Java program (this is a very rough guess!).
  EpsilonJ emphasizes the individual binding of role objects.
  In ObjectTeams/Java, the default is an implicit creation of roles on-demand.
  As a result, each team instance virtually has a role for each corresponding 
  base instance. ObjectTeams/Java provides several means to influence this
  default behavior, such that selective bindings like in EpsilonJ can easily
  be achieved, if you wish.
  
  Another interesting similarity: Just like EpsilonJ, Object Teams has first
  been explored by a language prototype using Ruby ;-) Our first case study
  using this prototype has been completed in 2002 and was presented at AOSD'03.
  The Java based version of Object Teams has been in classroom use since June 
  2003. An industrial case study is in progress.
 
Another recent approach, which had not been mentioned here, is the
Chameleon model by Kasper B. Graversen (http://www.itu.dk/~kbilsted/).

All these similarities make me believe all four languages are very close to 
a sweet spot ;-)
  
Regards,
Stephan



More information about the discuss mailing list