The meta of Meta-object Architectures

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    The meta of Meta-object Architectures - Presentation Transcript

    1. The Meta in Meta-Object Architectures Marcus Denker, University of Bern Mathieu Suen, INRIA Stéphane Ducasse, INRIA © Marcus Denker
    2. Partial Behavioral Reflection meta-object links activation condition source code (AST) Tanter, OOPSLA 2003 © Marcus Denker 2
    3. Partial Behavioral Reflection meta-object links activation condition source code (AST) David Röthlisberger, Marcus Denker and Éric Tanter: Dynamic Unanticipated Partial Behavioral Reflection: (Smalltalk) Adapting Applications at Runtime Journal of Computer Languages, Systems and Structures, vol. 34, no. 2-3, July 2008, pp. 46-65. © Marcus Denker 3
    4. Partial Behavioral Reflection meta-object links activation condition source code (AST) AST Marcus Denker, Stéphane Ducasse, Adrian Lienhard Philippe Marschall: Sub-Method Reflection Journal of Object Technology, vol. 6, no. 9, © Marcus Denker 4
    5. Behavioral Reflection: Flexible meta-object links activation condition source code (AST) > Very Flexible © Marcus Denker 5
    6. Behavioral Reflection: CLOS meta-object links activation condition source code (AST) > Meta-class MOP (CLOS) © Marcus Denker 6
    7. Behavioral Reflection: AOP meta-object links activation condition source code (AST) > Aspects © Marcus Denker 7
    8. Behavioral Reflection: Tracer tracer metaobject link source code (AST) > Tracer © Marcus Denker 8
    9. Problem: Recursion > Behavioral reflection cannot be applied to the whole system — System classes — Meta-objects © Marcus Denker 9
    10. Example: Beeper > Call the Beeper from OrderedCollection>>#add beepLink := Link new metaObject: Beeper. beepLink selector: #beep. (OrderedCollection>>#add:) methodNode link: beepLink. © Marcus Denker 10
    11. Meta-object Call Recursion Base Level Meta Object Meta Object #add: send #beep send #add: send #beep send #add: send Infinite recursion © Marcus Denker 11
    12. Ad-hoc Solutions > Code duplication > Adding special tests © Marcus Denker 12
    13. Tower of Interpreters > Smith, 1982 © Marcus Denker 13
    14. The Real Problem Representing Meta-Level Execution © Marcus Denker 14
    15. The Meta-Context Base Level Meta Level MetaContext activation > Link enables MetaContext MetaContext deactivation © Marcus Denker 15
    16. Context-aware Links Base Level Meta Level Stop meta-level call > Disable call when already on the meta-level © Marcus Denker 16
    17. MetaContext > Recursion problem solved meta-object meta links level 0 operation base © Marcus Denker 17
    18. MetaContext metameta- object meta-2 link level 1 meta-object > Meta-level analysis: meta — Trace the tracer links level 0 operation base © Marcus Denker 18
    19. Future Work > Generalize context model: — Beyond the meta-context > Virtual machine support > Context-aware language kernel © Marcus Denker 19
    20. Conclusion > Recursion problem > Missing representation of meta-level execution > Meta-context — Solves the recursion problem — Enables meta-level analysis © Marcus Denker 20
    21. Conclusion > Recursion problem > Missing representation of meta-level execution > Meta-context — Solves the recursion problem — Enables meta-level analysis Questions? © Marcus Denker 21

    + Marcus DenkerMarcus Denker, 3 months ago

    custom

    140 views, 0 favs, 0 embeds more stats

    Behavioral reflection is crucial to support for exa more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 140
      • 140 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 2
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories