×

保留属性的方面。 (英文) Zbl 1243.68143号

摘要:面向方面编程可以任意扭曲程序的语义。特别是,编织会使基本程序的关键安全性和活性属性失效。在本文中,我们确定了保留某些属性类的方面的类别。然后设计专用方面语言以确保方面属于特定类别,因此,编织程序将保留相应的属性。
受Katz的启发,我们的方面分类包括观察者、中止者、禁闭者和弱闯入者。观测器引入新的指令和新的本地状态,但不会修改基本程序的状态和控制流。中止者是也可能中止执行的观察者。限定符只确保执行保持在基本程序的可访问状态。弱入侵者限制了两个通知的执行。这些类别(以及其他两个类别)是基于独立于语言的抽象语义框架正式定义的。保留属性的类被定义为确定性程序的LTL子集和非确定性程序的CTL*子集。我们可以正式证明,对于任何程序,类别中任何方面的编织都会保留相关类中的任何属性。
对于大多数方面类别,我们提出了一种专门的方面语言,它确保用该语言编写的任何方面都属于相应的类别。可以证明,这些语言通过构造保持了相应的属性类。方面语言共享相同的表达切入点语言,并且被设计为通用的命令式基础语言。
每个类别和语言都用简单的例子加以说明。附录提供了语义和两个证明实例:通过类别保存属性的证明和用语言编写的所有方面都属于相应类别的证明。

MSC公司:

第68页第19页 其他编程范式(面向对象、顺序、并发、自动等)
68问题55 计算理论中的语义学
68甲15 编程语言理论
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Kiczales,G。;兰平,J。;门德卡尔,A。;Maeda,C。;Lopes,C。;Loingtier,J.-M。;Irwin,J.:面向方面编程,Lncs 1241220-242(1997)
[2] Kiczales,G。;Hilsdale,E。;休古宁,J。;克尔斯滕,M。;Palm,J。;Griswold,W.:从方面开始,J.common。ACM 44、59-65(2001)
[3] Katz,S.:时间属性的方面类别和类别,Trans。面向方面的软件。第3880版,第106-134页(2006年)·Zbl 1165.68363号 ·doi:10.1007/116870614
[4] Manna,Z。;Pnueli,A.:反应和并发系统的时序逻辑(1992)·Zbl 0753.68003号
[5] 克拉克,E.M。;艾默生,E.A。;Sistla,A.P.:使用时序逻辑规范自动验证有限状态并发系统:实用方法,117-126(1983)
[6] 德约科,S.Djoko;杜恩斯,R。;Fradet,P.:保护特性方面,135-145(2008)·Zbl 1243.68143号
[7] 德约科,S.Djoko;杜恩斯,R。;Fradet,P.:保存属性类的专用方面语言,227-236(2008)·Zbl 1243.68143号
[8] S.Djoko Djoco,《程序设计方面与保护》,南特大学博士论文,2009年。
[9] S.Djoko Djoco,R.Douence,P.Fradet,D.Le Botlan,CASB:通用方面语义库,AOSD-Europe Deliverable D54技术报告,Inria,2006年。
[10] Sistla,A.P.:关于时序逻辑中安全性和活性特性的表征,39-48(1985)
[11] M.Chapman,A.Vasseur,G.Kniesel(编辑),《2006年AOSD行业跟踪会议记录》,德国波恩,2006年3月20日至24日,第IAI-TR-2006-3卷,波恩大学计算机科学第三系,2006年。
[12] T.Colcombet,P.Fradet,通过程序转换强制跟踪属性,收录于:编程语言原理研讨会,POPL'00,第54–66页·Zbl 1323.68355号
[13] 弗雷德,P。;Ha,S.Hong Tuan:可用性方面,165-174(2007)
[14] 弗雷德,P。;Ha,S.Hong Tuan:网络融合,Lncs 3302,21-40(2004)·Zbl 1116.68383号 ·doi:10.1007/b102225
[15] S.Djoko Djoko,R.Douence,P.Fradet,《通用方面语义库和一些应用》,技术报告AOSD-Europe可交付成果D135,AOSD-Europe-INRIA-182008。
[16] I.纳吉。;Bergmans,L。;Aksit,M.:在共享连接点构建方面,Lni 69,19-38(2005)
[17] M.Aksit,A.Rensink,T.Staijen,一种基于图形变换的模拟方法,用于分析共享连接点上的方面干扰,in:Proc。国际面向方面软件开发会议,AOSD’09,第39–50页。
[18] E.Katz、S.Katz,《语义方面交互和可能共享的连接点》,摘自:FOAL’10:2010年面向方面语言基础研讨会论文集,第43-52页。
[19] 杜恩斯,R。;弗雷德,P。;Südholt,M.:方面交互的检测和解决框架,Lncs 2487,173-188(2002)·Zbl 1028.68727号
[20] 杜恩斯,R。;弗雷德,P。;Südholt,M.:有状态方面的组合、重用和交互分析,141-150(2004)
[21] Winskel,G.:编程语言的形式语义:导论(1993)·Zbl 0919.68082号
[22] 尼尔森,F。;Nielson,H.R.:《语义与应用——正式介绍》(1992)·兹伯利0875.68626
[23] 基什内尔,C。;科佩兹,R。;Moreau,P.-E.:反彩色匹配,Lncs 4421,110-124(2007)·Zbl 1155.68367号 ·doi:10.1007/978-3-540-71316-6_9
[24] 丹塔斯,D.S。;Walker,D.:无害的建议,SIGPLAN不是。41, 383-396 (2006) ·Zbl 1369.68071号
[25] 克里希那穆尔蒂,S。;菲斯勒,K。;Greenberg,M.:模块化验证方面建议,137-146(2004)
[26] Goldman,M。;Katz,S.:Maven:模块化方面验证,计算机科学课堂讲稿4424,308-322(2007)·Zbl 1186.68291号 ·文件编号:10.1007/978-3-540-71209-1_24
[27] Katz,E。;Katz,S.:强侵袭性方面的模块化验证:总结,7-12(2009)·Zbl 1241.68051号
[28] 里纳德,M。;Salcianu,A。;Bugrara,S.:面向方面程序的分类系统和分析,147-158(2004)
[29] C.Clifton,G.T.Leavens,《观察家和助手:模块化面向方面推理的建议》,载于:G.T.Levens,R.Cytron(编辑),《2002年FOAL会议记录:2002年AOSD面向方面语言基础研讨会》,第02-06号,载于《技术报告》,爱荷华州大学计算机科学系,第33-44页。
[30] Barthe,G。;Kunz,C.:规范-保护建议证书翻译,9-18(2008)
[31] 奥利维拉,B.C.D.S。;施里杰弗斯,T。;库克,W.R.:《有效建议:有明确效果的纪律性建议》(Effectiveadvice:disciplined advice with explicit effects),《美国科学与发展学会期刊》,109-120(2010)
[32] Aldrich,J.:《开放模块:关于建议的模块化推理》,计算机科学课堂讲稿3586,144-168(2005)
[33] Wand,M。;Kiczales,G。;Dutchyn,C.:面向方面编程中通知和动态连接点的语义,Trans。程序。语言系统。26,第5期,890-910(2004)
[34] 布伦斯,G。;Jagadeesan,R。;杰弗里,A。;Riely,J.:{\(\mu\)}abc:最小方面演算,209-224(2004)·Zbl 1099.68586号 ·doi:10.1007/b100113
[35] 克利夫顿,C。;Leavens,G.T.:Minimao1:一种研究面向方面推理的命令式核心语言,Sci。计算。程序。63221-374(2006年)·Zbl 1170.68421号 ·doi:10.1016/j.scico.2006.02.009
[36] Aksit,M。;Rensink,A。;Staijen,T.:一种基于图形变换的仿真方法,用于分析共享连接点上的方面干扰,39-50(2009)
[37] Jagadeesan,R。;杰弗里,A。;Riely,J.:非类型面向方面程序的微积分,54-73(2003)
[38] Lämmel,R.:方法调用拦截的语义方法,41-55(2002)
[39] 杜恩斯,R。;Teboul,L.:控制流的横切语言,Lncs 3286,95-114(2004)
[40] Jagadeesan,R。;杰弗里,A。;Riely,J.:方面的类型参数多态性,科学。计算。程序。63, 267-296 (2006) ·Zbl 1119.68048号 ·doi:10.1016/j.scico.2006.02.008
[41] Walker,D。;Zdancewic,S。;Ligatti,J.:方面理论,127-139(2003)·Zbl 1315.68072号
[42] 丹塔斯,D.S。;Walker,D。;Washburn,G。;Weirich,S.:Polyaml:一种面向方面的多态函数编程语言,306-319(2005)·Zbl 1302.68057号
[43] Masuhara,H。;Tatsuzawa,H。;Yonezawa,A.:Aspectual caml:面向方面的函数语言,SIGPLAN不是。40, 320-330 (2005) ·Zbl 1302.68066号
[44] C.Videira Lopes,D:分布式编程的语言框架,波士顿东北大学计算机科学学院博士论文,1997年。
[45] A.Mendhekar,G.Kiczales,J.Lamping,RG:面向方面编程的案例研究,技术报告SPL97-009 P9710044,施乐帕洛阿尔托研究中心,加利福尼亚州帕洛阿尔多,美国,1997年。
[46] Lippert,M。;Lopes,C.V.:使用面向方面编程进行异常检测和处理的研究,418-427(2000)
[47] 考迪,Y。;Kiczales,G。;Feeley,M。;Smolyn,G.:使用aspectc来提高操作系统代码中特定路径定制的模块性,SIGSOFT softw。工程注释26,88-98(2001)
[48] Gibbons,J。;Hutton,G.:共同草书程序的证明方法,基金会。通知。66, 353-366 (2005) ·Zbl 1098.68028号
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。