Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

Domain-specific aspect languages for modularising crosscutting concerns in grammars

Domain-specific aspect languages for modularising crosscutting concerns in grammars

For access to this article, please select a purchase option:

Buy article PDF
£12.50
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Name:*
Email:*
Your details
Name:*
Email:*
Department:*
Why are you recommending this title?
Select reason:
 
 
 
 
 
IET Software — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

The emergence of crosscutting concerns can be observed in various representations of software artefacts (e.g. source code, models, requirements and language grammars). Although much of the focus of aspect-oriented programming has been on aspect languages that augment the descriptive power of general-purpose programming languages, there is also a need for domain-specific aspect languages that address particular crosscutting concerns found in software representations other than traditional source code. This study discusses the issues involved in the design and implementation of domain-specific aspect languages that are focused within the domain of language specification. Specifically, the study outlines the challenges and issues faced while designing two separate aspect languages that assist in modularising crosscutting concerns in grammars.

References

    1. 1)
      • M. Mernik , M. Lenič , E. Avdičaušević , V. Žumer . A reusable object-oriented approach to formal specifications of programming languages. L'Objet , 3 , 273 - 306
    2. 2)
      • Shonle, M., Lieberherr, K., Shah, A.: `XAspects: an extensible system for domain-specific aspect languages', Companion 18th Ann. ACM SIGPLAN Conf. Object-oriented Programming, Systems, Languages, and Applications (OOPSLA), 2003, p. 28–37.
    3. 3)
      • Klint, P., Van der Storm, T., Vinju, J.J.: `Term rewriting meets aspect–oriented programming', Processes, Terms and Cycles: Steps on the Road to Infinity, Essays Dedicated to Jan Willem Klop, on the Occasion of His 60th Birthday, 2005, p. 88–105.
    4. 4)
      • J. Paakki . Attribute grammar paradigms – a high-level methodology in language implementation. ACM Comput. Surv. , 2 , 196 - 255
    5. 5)
      • M. Mernik , M. Lenič , E. Avdičaušević , V. Žumer . The template and multiple inheritance approach into attribute grammars. IEEE and ACM Int. Conf. Computer Languages , 102 - 110
    6. 6)
      • Lämmel, R., Riedewald, G., Lohmann, W.: `Roles of program extension', Logic Programming Synthesis and Transformation (LOPSTR), 1999, p. 136–155, (LNCS, 1817).
    7. 7)
      • Wu, H., Gray, J., Roychoudhury, S., Mernik, M.: `Weaving a debugging aspect into domain-specific language grammars', Proc. ACM Symp. Applied Computing (SAC), 2005, p. 1370–1374.
    8. 8)
      • H. Wu , J. Gray , M. Mernik . Grammar-driven generation of domain-specific language debuggers. Softw. Pract. Exper. , 10 , 1073 - 1103
    9. 9)
      • Rebernak, D., Mernik, M.: `A tool for compiler construction based on aspect-oriented specifications', 31stAnn. Int. Computer Software and Applications Conf. (COMPSAC), 2007, 2, p. 11–16.
    10. 10)
      • G.D.P. Dueck , G.V. Cormack . Modular attribute grammars. Comp. J. , 2 , 164 - 172
    11. 11)
      • Lämmel, R., Riedewald, G.: `Reconstruction of paradigm shifts', Second Workshop on Attribute Grammars and their Applications (WAGA), 1999, p. 37–56.
    12. 12)
      • Ekman, T., Hedin, G.: `The JastAdd extensible Java compiler', 22ndACM SIGPLAN Conf. Object-Oriented Programming Systems and Applications (OOPSLA), 2007, p. 1–18.
    13. 13)
      • Attali, I., Courbis, C., Degenne, P., Fau, A., Parigot, D., Pasquier, C.: `SmartTools: a generator of interactive environments tools', 10thInt. Conf. Compiler Construction, 2001, p. 355–360, (LNCS, 2027).
    14. 14)
      • E. Van Wyk . Implementing aspect-oriented programming constructs as modular language extensions. Sci. Comput. Prog. , 38 - 61
    15. 15)
      • Lämmel, R.: `Declarative aspect-oriented programming', ACM SIGPLAN Workshop on Partial Evaluation and Semantics-Based Program Manipulation, 1999, p. 131–146.
    16. 16)
      • M. Mernik , J. Heering , A.M. Sloane . When and how to develop domain-specific languages. ACM Comput. Surv. , 4 , 316 - 344
    17. 17)
      • D.A. Watt . (1990) Programming language concepts and paradigms.
    18. 18)
      • C. Courbis , A. Finkelstein . (2005) Towards aspect weaving applications.
    19. 19)
      • I. Baxter , C. Pidgeon , M. Mehlich . (2004) DMS: Program transformation for practical scalable software evolution, Proc. Int. Conf. Software Engineering (ICSE).
    20. 20)
      • A.V. Aho , M.S. Lam , R. Sethi , J.D. Ullman . (2006) Compilers: principles, techniques, and tools.
    21. 21)
      • P. Henriques , M.J. Varanda Pereira , M. Mernik , M. Lenič , J. Gray , H. Wu . Automatic generation of language-based tools using LISA. IEE Proc. Softw. Eng. , 2 , 54 - 69
    22. 22)
      • Herzeel, C., Gybels, K., Costanza, P.: `A temporal logic language for context awareness in pointcuts', ECOOP Workshop on Revival of Dynamic Languages, 2006.
    23. 23)
      • D.E. Knuth . Semantics of context-free languages. Math. Syst. Theory , 2 , 127 - 145
    24. 24)
      • O. Spinczyk , D. Lohmann . The design and implementation of AspectC++. Knowl.–Based Syst. (Special Issue on Techniques to Produce Intelligent Secure Software) , 7 , 636 - 651
    25. 25)
      • K-G. Doh , P.D. Mosses . Composing programming languages by combining action-semantics modules. Sci. Comput. Program. , 1 , 3 - 36
    26. 26)
      • C. Lopes . (2004) Aspect-oriented programming: a historical perspective.
    27. 27)
      • J. Fabry , E. Tanter , T. D'Hondt . KALA: Kernel aspect language for advanced transactions. Sci. Comput. Program. , 3 , 165 - 180
    28. 28)
      • Tourwe, T., Kellens, A., Vanderperren, W., Vannieuwenhuyse, F.: `Inductively generated pointcuts to suppport refactoring to aspects', AOSD Workshop on Software Engineering Properties of Languages for Aspect Technologies (SPLAT), 2004.
    29. 29)
      • D.A. Schmidt . On the need for a popular formal semantics. ACM SIGPLAN Not. , 1 , 115 - 116
    30. 30)
      • J.F. Power , B.A. Malloy . A metrics suite for grammar-based software. J. Softw. Maint. , 6 , 405 - 426
    31. 31)
      • U. Kastens , W.M. Waite . Modularity and reusability in attribute grammars. Acta Inf. , 601 - 627
    32. 32)
      • Mernik, M., Wu, X., Bryant, B.: `Object-oriented language specifications: current status and future trends', ECOOP Workshop on Evolution and Reuse of Language Specifications for DSLs (ERLS), 2004.
    33. 33)
      • Van Wyk, E., Krishnan, L., Schwerdfeger, A., Bodin, D.: `Attribute grammar-based language extensions for Java', European Conf. Object-Oriented Programming (ECOOP), 2007, p. 575–599, (LNCS, 4609).
    34. 34)
      • J.T. Boyland . Remote attribute grammars. J. ACM , 4 , 627 - 687
    35. 35)
      • G. Hedin , E. Magnusson . JastAdd: an aspect-oriented compiler construction system. Sci. Comput. Program. , 1 , 37 - 58
    36. 36)
      • T. Reps , T. Teitelbaum . The synthesizer generator. ACM SIGPLAN Notices , 5 , 42 - 48
    37. 37)
      • T. Parr . (2007) The definitive ANTLR reference: building domain-specific languages.
    38. 38)
      • Voelter, M.: `A family of languages for architecture description', OOPSLA Workshop on Domain–Specific Modeling, 2008, p. 86–93.
    39. 39)
      • N. Wirth . (1978) Algorithms+data structures=programs.
    40. 40)
      • Liang, S., Hudak, P.: `Modular denotational semantics for compiler construction', Sixth European Symp. Programming Languages and Systems, 1996, p. 219–234, (LNCS, 1058).
    41. 41)
      • Parr, T.: `Enforcing strict model-view separation in template engines', 13thInt. Conf. the World Wide Web, 2004, ACM Press, p. 224–233.
    42. 42)
      • Mernik, M., Lenič, M., Avdičaušević, E., Žumer, V.: `LISA: an interactive environment for programming language development', Int. Conf. Compiler Construction (CC), 2002, p. 1–4, (LNCS, 2304).
    43. 43)
      • K.T. Kalleberg , E. Visser . Combining aspect-oriented and strategic programming. Electron. Notes Theor. Comput. Sci. , 1 , 5 - 30
    44. 44)
      • Van den Brand, M.G.J., Van Deursen, A., Heering, J.: `The A', Tenth Int. Conf. Compiler Construction, 2001, p. 365–370, (LNCS, 2027).
    45. 45)
      • G. Kiczales , E. Hilsdale , J. Hugunin , M. Kersten , J. Palm , W.G. Griswold . Getting started with Aspect J.. Commun. ACM (Special Issue on Aspect-Oriented Programming) , 10 , 59 - 65
    46. 46)
      • LISA: http://labraj.uni-mb.si/lisa, accessed March 2009.
    47. 47)
      • Farrow, R., Marlowe, T.J., Yellin, D.M.: `Composable attribute grammars: Support for modularity in translator design and implementation', 19thAnn. ACM SIGPLAN/SIGACT Symp. Principles of Programming Languages (POPL), 1992, p. 223–234.
    48. 48)
      • D. Rebernak , M. Mernik , P.R. Henriques , M.J. Varanda Pereira . AspectLISA: an aspect-oriented compiler construction system based on attribute grammars. Electron. Notes Theor. Comput. Sci. , 2 , 37 - 53
    49. 49)
      • Cottenier, T., Elrad, T.: `Contextual pointcut expressions for dynamic service customization', Dynamic Aspects Workshop (DAW), 2005, p. 95–99.
    50. 50)
      • Tanter, E., Gybels, K., Denker, M., Bergel, A.: `Context-aware aspects', Int. Symp. Software Composition, 2006, p. 227–249, (LNCS, 4089).
    51. 51)
      • D. Batory , J.N. Sarvela , A. Rauschmayer . Scaling step-wise refinement. IEEE Trans. Softw. Eng. , 6 , 355 - 371
    52. 52)
      • M. Mernik , M. Lenič , E. Avdičaušević , V. Žumer . Multiple attribute grammar inheritance. Informatica , 3 , 319 - 328
    53. 53)
      • Suvee, D., Vanderperren, W., Jonckers, V.: `JAsCo: An aspect-oriented approach tailored for component based software development', Int. Conf. Aspect-oriented Software Development (AOSD), 2003, ACM Press, p. 21–29.
    54. 54)
      • Hedin, G.: `An overview of door attribute grammars', Int. Conf. Compiler Construction, 1994, p. 31–51, (LNCS, 786).
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-sen.2007.0114
Loading

Related content

content/journals/10.1049/iet-sen.2007.0114
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address