ALIA4J's [(just-in-time) compile-time] MOP for advanced dispatching

Christoph Bockisch, Andreas Sewe, Martin Zandberg
{"title":"ALIA4J's [(just-in-time) compile-time] MOP for advanced dispatching","authors":"Christoph Bockisch, Andreas Sewe, Martin Zandberg","doi":"10.1145/2095050.2095101","DOIUrl":null,"url":null,"abstract":"The ALIA4J approach provides a framework for implementing execution environments with support for advanced dispatching as found, e.g., in aspect-oriented or predicate-dispatching languages. It also defines an extensible meta-model acting as intermediate representation for dispatching declarations, e.g., pointcut-advice or predicate methods. From the intermediate representation of all dispatch declarations in the program the framework derives an execution model for which ALIA4J specifies a generic execution strategy. The meta-object protocol (MOP) formed by the meta-model and framework is defined such that new programming language concepts can be implemented modularly: The semantics can be implemented in an interpretative style (e.g., using reflection) or by describing how to generate corresponding Java bytecode or even machine code. In the latter two cases, the implementation can reason about the current code generation context; this enables sophisticated optimizations. We discuss these optimization facilities by means of two case studies.","PeriodicalId":143880,"journal":{"name":"SPLASH Workshops","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2011-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SPLASH Workshops","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2095050.2095101","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

The ALIA4J approach provides a framework for implementing execution environments with support for advanced dispatching as found, e.g., in aspect-oriented or predicate-dispatching languages. It also defines an extensible meta-model acting as intermediate representation for dispatching declarations, e.g., pointcut-advice or predicate methods. From the intermediate representation of all dispatch declarations in the program the framework derives an execution model for which ALIA4J specifies a generic execution strategy. The meta-object protocol (MOP) formed by the meta-model and framework is defined such that new programming language concepts can be implemented modularly: The semantics can be implemented in an interpretative style (e.g., using reflection) or by describing how to generate corresponding Java bytecode or even machine code. In the latter two cases, the implementation can reason about the current code generation context; this enables sophisticated optimizations. We discuss these optimization facilities by means of two case studies.
ALIA4J的[(即时)编译时]MOP用于高级调度
ALIA4J方法提供了一个框架,用于实现支持高级调度的执行环境,例如,在面向方面或谓词调度语言中。它还定义了一个可扩展的元模型,作为分派声明(例如,切入点通知或谓词方法)的中间表示。从程序中所有分派声明的中间表示中,框架派生出一个执行模型,ALIA4J为此指定了一个通用的执行策略。由元模型和框架形成的元对象协议(MOP)被定义为可以模块化地实现新的编程语言概念:语义可以以解释性风格(例如,使用反射)实现,也可以通过描述如何生成相应的Java字节码甚至机器码来实现。在后两种情况下,实现可以推断当前代码生成上下文;这可以实现复杂的优化。我们通过两个案例研究来讨论这些优化工具。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信