Computer Science ›› 2017, Vol. 44 ›› Issue (9): 184-189.doi: 10.11896/j.issn.1002-137X.2017.09.035

Previous Articles     Next Articles

Static Semantics of Aspect-oriented Programming

XIE Gang, WEI Li and WU Xiang   

  • Online:2018-11-13 Published:2018-11-13

Abstract: Till now,many researchers have developed various formal semantics for aspect-oriented program.However,none of the semantics have provided the characterization of aspect-oriented programming specification and the declaration section of an aspect comprehensively and precisely.To make a further step,we defined a unified aspect-oriented programming specification language in our research.Then, we provided a formal definition for joinpoint and pointcut for aspect-oriented programs.Next,we introduced structural variables into the static structure to represent the aspect-orien-ted programs.Finally,we defined static semantics of aspect-oriented programs using the definition of design in unifying theories of programming,and proved its soundness afterwards.The approach was enumerated with a case to demonstrate the usage of the semantics.

Key words: Aspect-oriented programming,Static,Semantics

[1] KICZALES G,LAMPING J,MENDHEKAR A,et al.Aspect-oriented programming[C]∥European conference on object-orien-ted programming.Springer Berlin Heidelberg,1997:220-242.
[2] KICZALES G,HILDALE E,HUGUNIN J,et al.An overview of AspectJ[C]∥European Conference on Object-oriented Programming.Springer Berlin Heidelberg,2001:327-354.
[3] SPINCZYK O,GAL A,SCHRDER-PREIKSCHAT W.As-pectC++:an aspect-oriented extension to the C++ programming language[C]∥Proceedings of the Fortieth International Conference on Tools Pacific:Objects for internet,mobile and embedded applications.Australian Computer Society,Inc.,2002:53-60.
[4] Aspect R[EB/OL].[2016-03-01].http://sowrceforge.net/projects/aspectr.
[5] BONR J.What are the key issues for commercial AOP use:how does AspectWerkz address them?[C]∥Proceedings of the 3rd International Conference on Aspect-oriented Software Development.ACM,2004:5-6.
[6] HIRSCHFELD R.Aspects-oriented programming with squeak[C]∥Objects,Components,Architectures,Services,and Applications for a Networked World.2003:216-232.
[7] JBoss AOP homepage[EB/OL].[2016-03-01].http:// www.jboss.org/jbossaop.
[8] OSSHER H,TARR P.Hyper/J:multi-dimensional separation of concerns for Java[C]∥Proceedings of the 22nd International Conference on Software Engineering.ACM,2000:734-737.
[9] JI F H,LI X,LIU Z.rCOS:A refinement calculus of object systems[J].Theoretical Computer Science,2006,5(1),109-142.
[10] WAND M,KICZALES G,DUTCHYN C.A semantics for advice and dynamic join points in aspect-or iented programming[J].ACM Transactions on Programming Languages and Systems (TOPLAS),2004,26(5):890-910.
[11] JAGADEESAN R,JEFFREY A,RIELY J.A calculus of un-typed aspect-oriented programs[C]∥European Conference on Object-oriented Programming.Springer Berlin Heidelberg,2003:54-73.
[12] LMMEL R.A semantical approach to method-call interception[C]∥Proceedings of the 1st International Conference on Aspect-oriented Software Development.ACM,2002:41-55.
[13] WALKER D,ZDANCEWIC S,LIGATTI J.A theory of aspects [J].ACM SIGPLAN Notices,2003,38(9):127-139.
[14] TUCKER D B,KRISHNAMURTHI S.Pointcuts and advice in higher-order languages[C]∥Proceedings of the 2nd Internatio-nal Conference on Aspect-oriented Software Development.ACM,2003:158-167.
[15] MASUHARA H,KICZALES G.Modeling crosscutting in aspect-oriented mechanisms[C]∥European Conference on Object-Oriented Programming.Springer Berlin Heidelberg,2003:2-28.
[16] TABAREAU N.Aspect Oriented Programming:a language for 2-categories[C]∥Proceedings of the 10th International Workshop on Foundations of Aspect-oriented Languages.ACM,2011:13-17.
[17] AVGUSTINOV P,HAJIYEV E,ONGKINGCO N,et al.Se-mantics of static pointcuts in AspectJ[J].ACM Sigplan Notices,2007,42(1):11-23.
[18] FIGUEROA I,TANTER .A semantics for execution levelswith exceptions[C]∥Proceedings of the 10th International Workshop on Foundations of Aspect-oriented Languages.ACM,2011:7-11.
[19] GANG X,BO Y,MINGYI Z.A Semantics of Poincuts in AspectJ[J].IERI Procedia,2013,4:323-330.
[20] XIE G,ZHANG M Y,YANG B.A STATIC SEMA NTICS FOR ASPECTJ[J].Journal of Computer Tational Information Systems,2012,8(16):6951-6962.
[21] 王砚霖,王世耆.面向方面编程和AspectJ[OL/EB].[2016-03-01].http://www.creativepioneer.com/paper/AOP_and _AspectJ.pdf.
[22] HOARE A R C,HE J.Unifying theories of program ming[M].Englewood Cliffs:Prentice Hall,1998.
[23] MOLDEREZ T,JANSSENS D.Modular Reasoning in Aspect-oriented Languages from a Substitution Perspec tive[J].Tran-sactions on Aspect-oriented Software Develop ment XII.Sprin-ger Berlin Heidelberg,2015:3-59.
[24] ZHANG Q,KHEDRI R.On the weaving process of aspect-oriented product family algebra[J].Journal of Logical and AlgebraicMethods in Programming,2016,85(1):146-172.
[25] 陆钟万.面向计算机科学中的数理逻辑(第二版)[M].北京:科学出版社,2002:117-118.

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!