{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,8]],"date-time":"2026-03-08T09:02:13Z","timestamp":1772960533373,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":110,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540886426","type":"print"},{"value":"9783540886433","type":"electronic"}],"license":[{"start":{"date-parts":[[2008,1,1]],"date-time":"2008-01-01T00:00:00Z","timestamp":1199145600000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2008]]},"DOI":"10.1007\/978-3-540-88643-3_7","type":"book-chapter","created":{"date-parts":[[2008,10,6]],"date-time":"2008-10-06T23:12:26Z","timestamp":1223334746000},"page":"291-373","source":"Crossref","is-referenced-by-count":71,"title":["WebDSL: A Case Study in Domain-Specific Language Engineering"],"prefix":"10.1007","author":[{"given":"Eelco","family":"Visser","sequence":"first","affiliation":[]}],"member":"297","reference":[{"key":"7_CR1","unstructured":"Eclipse IDE Meta-tooling Platform (IMP), http:\/\/www.eclipse.org\/proposals\/imp\/"},{"key":"7_CR2","unstructured":"Echo web framework (July 2007), http:\/\/echo.nextapp.com\/site\/echo2"},{"key":"7_CR3","volume-title":"Compilers: Principles, techniques, and tools","author":"A. Aho","year":"1986","unstructured":"Aho, A., Sethi, R., Ullman, J.: Compilers: Principles, techniques, and tools. Addison-Wesley, Reading (1986)"},{"issue":"3","key":"7_CR4","doi-asserted-by":"publisher","first-page":"334","DOI":"10.1109\/32.798323","volume":"25","author":"D.L. Atkins","year":"1999","unstructured":"Atkins, D.L., Ball, T., Bruns, G., Cox, K.: Mawl: A domain-specific language for form-based services. IEEE Transactions on Software Engineering\u00a025(3), 334\u2013346 (1999)","journal-title":"IEEE Transactions on Software Engineering"},{"key":"7_CR5","unstructured":"Augusteijn, A.: Functional Programming, Program Transformations and Compiler Construction. PhD thesis, Department of Computing Science, Eindhoven University of Technology, The Netherlands (1993)"},{"key":"7_CR6","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9781139172752","volume-title":"Term Rewriting and All That","author":"F. Baader","year":"1998","unstructured":"Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)"},{"key":"7_CR7","unstructured":"Backus, J.W.: Automatic programming: properties and performance of FORTRAN systems I and II. In: Proceedings of the Symposium on the Mechanisation of Thought Processes, Teddington, Middlesex, England, The National Physical Laboratory (November 1958)"},{"issue":"5","key":"7_CR8","doi-asserted-by":"publisher","first-page":"299","DOI":"10.1145\/367236.367262","volume":"3","author":"J.W. Backus","year":"1960","unstructured":"Backus, J.W., et al.: Report on the algorithmic language ALGOL 60. Communications of the ACM\u00a03(5), 299\u2013314 (1960)","journal-title":"Communications of the ACM"},{"key":"7_CR9","first-page":"84","volume-title":"Proceedings of the ACM Workshop on ML","author":"V. Balat","year":"2006","unstructured":"Balat, V.: Ocsigen: typing web interaction with objective Caml. In: Kennedy, A., Pottier, F. (eds.) Proceedings of the ACM Workshop on ML, Portland, Oregon, USA, pp. 84\u201394. ACM, New York (September 2006)"},{"key":"7_CR10","doi-asserted-by":"crossref","unstructured":"Bauer, C., King, G.: Java Persistence with Hibernate. In: Manning, Greenwhich, NY, USA (2007)","DOI":"10.3139\/9783446413825"},{"key":"7_CR11","volume-title":"Extreme Programming Explained","author":"K. Beck","year":"2000","unstructured":"Beck, K.: Extreme Programming Explained. Addison-Wesley, Reading (2000)"},{"issue":"8","key":"7_CR12","doi-asserted-by":"publisher","first-page":"711","DOI":"10.1145\/6424.315691","volume":"29","author":"J.L. Bentley","year":"1986","unstructured":"Bentley, J.L.: Programming pearls: Little languages. Communications of the ACM\u00a029(8), 711\u2013721 (1986)","journal-title":"Communications of the ACM"},{"issue":"4","key":"7_CR13","doi-asserted-by":"publisher","first-page":"205","DOI":"10.1023\/A:1018772405468","volume":"3","author":"C. Brabrand","year":"2000","unstructured":"Brabrand, C., M\u00f8ller, A., Ricky, M., Schwartzbach, M.I.: PowerForms: Declarative client-side form field validation. World Wide Web Journal\u00a03(4), 205\u2013314 (2000)","journal-title":"World Wide Web Journal"},{"issue":"2","key":"7_CR14","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1145\/514183.514184","volume":"2","author":"C. Brabrand","year":"2002","unstructured":"Brabrand, C., M\u00f6ller, A., Schwartzbach, M.I.: The <\u2009bigwig\u2009> project. ACM Transactions on Internet Technology\u00a02(2), 79\u2013114 (2002)","journal-title":"ACM Transactions on Internet Technology"},{"key":"7_CR15","unstructured":"Bravenboer, M.: Connecting XML processing and term rewriting with tree grammars. Master\u2019s thesis, Utrecht University, Utrecht, The Netherlands (November 2003)"},{"key":"7_CR16","first-page":"3","volume-title":"Generative Programming and Component Engineering (GPCE 2007)","author":"M. Bravenboer","year":"2007","unstructured":"Bravenboer, M., Dolstra, E., Visser, E.: Preventing injection attacks with syntax embeddings. A host and guest language independent approach. In: Lawall, J. (ed.) Generative Programming and Component Engineering (GPCE 2007), pp. 3\u201312. ACM, New York (October 2007)"},{"key":"7_CR17","first-page":"95","volume-title":"ACM SIGPLAN 2006 Workshop on Partial Evaluation and Program Manipulation (PEPM 2006)","author":"M. Bravenboer","year":"2006","unstructured":"Bravenboer, M., Kalleberg, K.T., Vermaas, R., Visser, E.: Stratego\/XT 0.16. Components for transformation systems. In: ACM SIGPLAN 2006 Workshop on Partial Evaluation and Program Manipulation (PEPM 2006), Charleston, South Carolina, pp. 95\u201399. ACM SIGPLAN, New York (January 2006)"},{"key":"7_CR18","doi-asserted-by":"crossref","unstructured":"Bravenboer, M., Kalleberg, K.T., Vermaas, R., Visser, E.: Stratego\/XT Tutorial, Examples, and Reference Manual (latest). Department of Information and Computing Sciences, Universiteit Utrecht, Utrecht, The Netherlands (2006), http:\/\/www.strategoxt.org","DOI":"10.1145\/1111542.1111558"},{"key":"#cr-split#-7_CR19.1","doi-asserted-by":"crossref","unstructured":"Bravenboer, M., Kalleberg, K.T., Vermaas, R., Visser, E.: Stratego\/XT 0.17. A language and toolset for program transformation. In: Science of Computer Programming (2008);","DOI":"10.1016\/j.scico.2007.11.003"},{"key":"#cr-split#-7_CR19.2","unstructured":"Special issue on Experimental Systems and Tools"},{"issue":"1\u20132","key":"7_CR20","first-page":"123","volume":"69","author":"M. Bravenboer","year":"2006","unstructured":"Bravenboer, M., van Dam, A., Olmos, K., Visser, E.: Program transformation with scoped dynamic rewrite rules. Fundamenta Informaticae\u00a069(1\u20132), 123\u2013178 (2006)","journal-title":"Fundamenta Informaticae"},{"key":"7_CR21","doi-asserted-by":"publisher","first-page":"365","DOI":"10.1145\/1028976.1029007","volume-title":"Proceedings of the 19th ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2004)","author":"M. Bravenboer","year":"2004","unstructured":"Bravenboer, M., Visser, E.: Concrete syntax for objects. Domain-specific language embedding and assimilation without restrictions. In: Schmidt, D.C. (ed.) Proceedings of the 19th ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2004), Vancouver, Canada, pp. 365\u2013383. ACM Press, New York (October 2004)"},{"key":"7_CR22","series-title":"Lecture Notes in Computer Science","volume-title":"Model Driven Engineering Languages and Systems","author":"M. Bravenboer","year":"2007","unstructured":"Bravenboer, M., Visser, E.: Designing syntax embeddings and assimilations for language libraries. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol.\u00a04735. Springer, Heidelberg (2007)"},{"key":"7_CR23","volume-title":"Eclipse Modeling Framework","author":"F. Budinsky","year":"2004","unstructured":"Budinsky, F., Steinberg, D., Merks, E., Ellersick, R., Grose, T.J.: Eclipse Modeling Framework. Addison-Wesley, Reading (2004)"},{"key":"7_CR24","first-page":"249","volume-title":"Proceedings of 1974 ACM-SIGMOD Workshop on Data Description, Access and Control","author":"D.D. Chamberlin","year":"1974","unstructured":"Chamberlin, D.D., Boyce, R.F.: SEQUEL: A structured english query language. In: Rustin, R. (ed.) Proceedings of 1974 ACM-SIGMOD Workshop on Data Description, Access and Control, Arbor, Michigan, pp. 249\u2013264. ACM, New York (May 1974)"},{"issue":"6","key":"7_CR25","doi-asserted-by":"publisher","first-page":"814","DOI":"10.1145\/945885.945890","volume":"25","author":"A.S. Christensen","year":"2003","unstructured":"Christensen, A.S., M\u00f6ller, A., Schwartzbach, M.I.: Extending Java for high-level web service construction. ACM Transactions on Programming Languages and Systems\u00a025(6), 814\u2013875 (2003)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"issue":"4","key":"7_CR26","doi-asserted-by":"publisher","first-page":"17","DOI":"10.1145\/1317265.1317268","volume":"4","author":"W. Clinger","year":"1991","unstructured":"Clinger, W.: Macros in scheme. SIGPLAN Lisp Pointers\u00a04(4), 17\u201323 (1991)","journal-title":"SIGPLAN Lisp Pointers"},{"issue":"6","key":"7_CR27","doi-asserted-by":"publisher","first-page":"377","DOI":"10.1145\/362384.362685","volume":"13","author":"E.F. Codd","year":"1970","unstructured":"Codd, E.F.: A relational model of data for large shared data banks. Communications of the ACM\u00a013(6), 377\u2013387 (1970)","journal-title":"Communications of the ACM"},{"key":"7_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1007\/978-3-540-25935-0_2","volume-title":"Domain-Specific Program Generation","author":"C. Consel","year":"2004","unstructured":"Consel, C.: From a program family to a domain-specific language. In: Lengauer, C., Batory, D., Consel, C., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol.\u00a03016, pp. 19\u201329. Springer, Heidelberg (2004)"},{"key":"7_CR29","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"170","DOI":"10.1007\/BFb0056614","volume-title":"Proceedings of the 10th International Symposium on Programming Language Implementation and Logic Programming","author":"C. Consel","year":"1998","unstructured":"Consel, C., Marlet, R.: Architecturing software using a methodology for language development. In: Palamidessi, C., Meinke, K., Glaser, H. (eds.) ALP 1998 and PLILP 1998. LNCS, vol.\u00a01490, pp. 170\u2013194. Springer, Heidelberg (1998)"},{"key":"7_CR30","volume-title":"Domain-Specific Development with Visual Studio DSL Tools","author":"S. Cook","year":"2007","unstructured":"Cook, S., Jones, G., Kent, S., Wills, A.C.: Domain-Specific Development with Visual Studio DSL Tools. Addison-Wesley, Reading (2007)"},{"issue":"3","key":"7_CR31","doi-asserted-by":"publisher","first-page":"190","DOI":"10.1016\/j.scico.2006.04.002","volume":"61","author":"J. Cordy","year":"2006","unstructured":"Cordy, J.: The TXL source transformation language. Science of Computer Programming\u00a061(3), 190\u2013210 (2006)","journal-title":"Science of Computer Programming"},{"key":"7_CR32","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"313","DOI":"10.1007\/11527800_25","volume-title":"Unconventional Programming Paradigms","author":"K. Czarnecki","year":"2005","unstructured":"Czarnecki, K.: Overview of generative software development. In: Ban\u00e2tre, J.-P., et al. (eds.) UPP 2004. LNCS, vol.\u00a03566, pp. 313\u2013328. Springer, Heidelberg (2005)"},{"key":"7_CR33","volume-title":"Generative programming: methods, tools, and applications","author":"K. Czarnecki","year":"2000","unstructured":"Czarnecki, K., Eisenecker, U.W.: Generative programming: methods, tools, and applications. Addison-Wesley, New York (2000)"},{"issue":"3","key":"7_CR34","doi-asserted-by":"publisher","first-page":"621","DOI":"10.1147\/sj.453.0621","volume":"45","author":"K. Czarnecki","year":"2006","unstructured":"Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Systems Journal\u00a045(3), 621\u2013646 (2006)","journal-title":"IBM Systems Journal"},{"key":"7_CR35","volume-title":"Proceedings of the 2nd International Symposium on Constructing Software Engineering Tools (CoSET 2000)","author":"M. Jonge de","year":"2000","unstructured":"de Jonge, M.: A pretty-printer for every occasion. In: Ferguson, I., Gray, J., Scott, L. (eds.) Proceedings of the 2nd International Symposium on Constructing Software Engineering Tools (CoSET 2000). University of Wollongong, Australia (2000)"},{"key":"7_CR36","unstructured":"Dmitriev, S.: Language Oriented Programming: The next programming paradigm (2004), http:\/\/www.onboard.jetbrains.com\/articles\/04\/10\/lop\/"},{"key":"7_CR37","unstructured":"Dolstra, E.: The Purely Functional Software Deployment Model. PhD thesis, Utrecht University, Utrecht, The Netherlands (January 2006)"},{"key":"7_CR38","first-page":"83","volume-title":"12th International Workshop on Software Configuration Management (SCM-12)","author":"E. Dolstra","year":"2005","unstructured":"Dolstra, E., Bravenboer, M., Visser, E.: Service configuration management. In: James Whitehead, J.E., Dahlqvist, A.P. (eds.) 12th International Workshop on Software Configuration Management (SCM-12), Lisbon, Portugal, pp. 83\u201398. ACM, New York (September 2005)"},{"key":"7_CR39","first-page":"583","volume-title":"26th International Conference on Software Engineering (ICSE 2004)","author":"E. Dolstra","year":"2004","unstructured":"Dolstra, E., Visser, E., de Jonge, M.: Imposing a memory management discipline on software deployment. In: Estublier, J., Rosenblum, D. (eds.) 26th International Conference on Software Engineering (ICSE 2004), Edinburgh, Scotland, pp. 583\u2013592. IEEE Computer Society, Los Alamitos (May 2004)"},{"key":"7_CR40","doi-asserted-by":"crossref","unstructured":"Ducasse, S., Lienhard, A., Renggli, L.: Seaside: A flexible environment for building dynamic web applications. IEEE Software, pp. 56\u201363 (September\/ October 2007)","DOI":"10.1109\/MS.2007.144"},{"key":"7_CR41","unstructured":"Earley, J.: An Efficient Context-free Parsing Algorithm. PhD thesis, Carnegie-Mellon University, Pittsburgh, PA (1968) (see also [42])"},{"issue":"2","key":"7_CR42","doi-asserted-by":"publisher","first-page":"94","DOI":"10.1145\/362007.362035","volume":"13","author":"J. Earley","year":"1970","unstructured":"Earley, J.: An efficient context-free parsing algorithm. Communications of the ACM\u00a013(2), 94\u2013102 (1970)","journal-title":"Communications of the ACM"},{"key":"7_CR43","unstructured":"Efftinge, S., Friese, P., Haase, A., Kadura, C., Kolb, B., Moroff, D., Thoms, K., V\u00f6lter, M.: openArchitectureWare User Guide. Version 4.2 (2007), http:\/\/www.openarchitectureware.org"},{"key":"7_CR44","series-title":"Lecture Notes in Computer Science","first-page":"144","volume-title":"ECOOP 2004 \u2013 Object-Oriented Programming","author":"T. Ekman","year":"2004","unstructured":"Ekman, T., Hedin, G.: Rewritable reference attributed grammars. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol.\u00a03086, pp. 144\u2013169. Springer, Heidelberg (2004)"},{"issue":"10","key":"7_CR45","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/1297105.1297029","volume":"42","author":"T. Ekman","year":"2007","unstructured":"Ekman, T., Hedin, G.: The jastadd extensible java compiler. SIGPLAN Notices\u00a042(10), 1\u201318 (2007)","journal-title":"SIGPLAN Notices"},{"key":"7_CR46","unstructured":"Fowler, M.: Inversion of control containers and the dependency injection pattern (January 2004), http:\/\/www.martinfowler.com\/articles\/injection.html"},{"key":"7_CR47","unstructured":"Fowler, M.: Language workbenches: the killer-app for domain specific languages (2005), http:\/\/www.martinfowler.com\/articles\/languageWorkbench.html"},{"key":"7_CR48","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E. Gamma","year":"1995","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)"},{"key":"7_CR49","doi-asserted-by":"publisher","first-page":"121","DOI":"10.1145\/129630.129637","volume":"35","author":"R.W. Gray","year":"1992","unstructured":"Gray, R.W., Heuring, V.P., Levi, S.P., Sloane, A.M., Waite, W.M.: Eli: A complete, flexible compiler construction system. Communications of the ACM\u00a035, 121\u2013131 (1992)","journal-title":"Communications of the ACM"},{"issue":"2","key":"7_CR50","doi-asserted-by":"publisher","first-page":"121","DOI":"10.1145\/129630.129637","volume":"35","author":"R.W. Gray","year":"1992","unstructured":"Gray, R.W., Levi, S.P., Heuring, V.P., Sloane, A.M., Waite, W.M.: Eli: a complete, flexible compiler construction system. Commun. ACM\u00a035(2), 121\u2013130 (1992)","journal-title":"Commun. ACM"},{"key":"7_CR51","volume-title":"Software Factories. Assembling Applications with Patterns, Models, Frameworks, and Tools","author":"J. Greenfield","year":"2004","unstructured":"Greenfield, J., Short, K.: Software Factories. Assembling Applications with Patterns, Models, Frameworks, and Tools. Wiley, Chichester (2004)"},{"key":"7_CR52","volume-title":"International Conference on Web Engineering (ICWE 2008)","author":"D. Groenewegen","year":"2008","unstructured":"Groenewegen, D., Visser, E.: Declarative access control for WebDSL: Combining language integration and separation of concerns. In: Schwabe, D., Curbera, F. (eds.) International Conference on Web Engineering (ICWE 2008). IEEE CS Press, Los Alamitos (July 2008)"},{"issue":"11","key":"7_CR53","doi-asserted-by":"publisher","first-page":"43","DOI":"10.1145\/71605.71607","volume":"24","author":"J. Heering","year":"1989","unstructured":"Heering, J., Hendriks, P.R.H., Klint, P., Rekers, J.: The syntax definition formalism SDF \u2013 reference manual. SIGPLAN Notices\u00a024(11), 43\u201375 (1989)","journal-title":"SIGPLAN Notices"},{"key":"7_CR54","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-69927-9_13","volume-title":"Theory and Practice of Model Transformations","author":"Z. Hemel","year":"2008","unstructured":"Hemel, Z., Kats, L., Visser, E.: Code generation by model transformation. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol.\u00a05063. Springer, Heidelberg (2008)"},{"key":"7_CR55","doi-asserted-by":"publisher","first-page":"196","DOI":"10.1145\/242224.242477","volume":"28","author":"P. Hudak","year":"1996","unstructured":"Hudak, P.: Building domain-specific embedded languages. ACM Comput. Surv.\u00a028, 196 (1996)","journal-title":"ACM Comput. Surv."},{"key":"7_CR56","unstructured":"Seam, J.: Seam - Contextual Components. A Framework for Java EE 5, 1.2.1.ga edition (2007), http:\/\/www.jboss.com\/products\/seam"},{"key":"7_CR57","unstructured":"Johnson, S.C.: YACC\u2014yet another compiler-compiler. Technical Report CS-32, AT & T Bell Laboratories. Murray Hill, N.J (1975)"},{"key":"7_CR58","volume-title":"Proceedings of the 23rd ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2008)","author":"L. Kats","year":"2008","unstructured":"Kats, L., Bravenboer, M., Visser, E.: Mixing source and bytecode. A case for compilation by normalization. In: Kiczales, G. (ed.) Proceedings of the 23rd ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2008). ACM Press, New York (2008)"},{"key":"7_CR59","unstructured":"Kats, L.C.L., Kalleberg, K.T., Visser, E.: Generating editors for embedded languages. integrating SGLR into IMP. In: Johnstone, A., Vinju, J. (eds.) Proceedings of the Eigth Workshop on Language Descriptions, Tools, and Applications (LDTA 2008), Budapest, Hungary (April 2008)"},{"key":"7_CR60","doi-asserted-by":"publisher","DOI":"10.1002\/9780470249260","volume-title":"Domain-Specific Modeling. Enabling Full Code Generation","author":"S. Kelly","year":"2008","unstructured":"Kelly, S., Tolvanen, J.-P.: Domain-Specific Modeling. Enabling Full Code Generation. John Wiley & Sons, Inc, Chichester (2008)"},{"key":"7_CR61","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"286","DOI":"10.1007\/3-540-47884-1_16","volume-title":"Integrated Formal Methods","author":"S. Kent","year":"2002","unstructured":"Kent, S.: Model driven engineering. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol.\u00a02335, pp. 286\u2013298. Springer, Heidelberg (2002)"},{"issue":"2","key":"7_CR62","doi-asserted-by":"publisher","first-page":"176","DOI":"10.1145\/151257.151260","volume":"2","author":"P. Klint","year":"1993","unstructured":"Klint, P.: A meta-environment for generating programming environments. ACM Transactions on Software Engineering and Methodology\u00a02(2), 176\u2013201 (1993)","journal-title":"ACM Transactions on Software Engineering and Methodology"},{"issue":"12","key":"7_CR63","doi-asserted-by":"publisher","first-page":"735","DOI":"10.1145\/355588.365140","volume":"7","author":"D.E. Knuth","year":"1964","unstructured":"Knuth, D.E.: Backus Normal Form vs. Backus Naur Form. Communications of the ACM\u00a07(12), 735\u2013736 (1964)","journal-title":"Communications of the ACM"},{"key":"7_CR64","doi-asserted-by":"publisher","first-page":"607","DOI":"10.1016\/S0019-9958(65)90426-2","volume":"8","author":"D.E. Knuth","year":"1965","unstructured":"Knuth, D.E.: On the translation of languages from left to right. Information and Control\u00a08, 607\u2013639 (1965)","journal-title":"Information and Control"},{"issue":"2","key":"7_CR65","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1007\/BF01692511","volume":"2","author":"D.E. Knuth","year":"1968","unstructured":"Knuth, D.E.: Semantics of context-free languages. Mathematical Systems Theory\u00a02(2), 127\u2013145 (1968); Correction in: Mathematical Systems Theory 5(1), 95\u201396 (1971)","journal-title":"Mathematical Systems Theory"},{"key":"7_CR66","series-title":"Computers and Typesetting","volume-title":"The TEXbook","author":"D.E. Knuth","year":"1984","unstructured":"Knuth, D.E.: The TEXbook. vol.\u00a0A, Computers and Typesetting. Addison-Wesley, Reading (1984)"},{"issue":"4","key":"7_CR67","doi-asserted-by":"publisher","first-page":"431","DOI":"10.1007\/s10990-007-9008-y","volume":"20","author":"S. Krishnamurthi","year":"2007","unstructured":"Krishnamurthi, S., Hopkins, P.W., McCarthy, J.A., Graunke, P.T., Pettyjohn, G., Felleisen, M.: Implementation and use of the plt scheme web server. Higher-Order and Symbolic Computation\u00a020(4), 431\u2013460 (2007)","journal-title":"Higher-Order and Symbolic Computation"},{"key":"7_CR68","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"137","DOI":"10.1007\/3-540-45587-6_10","volume-title":"Practical Aspects of Declarative Languages","author":"R. L\u00e4mmel","year":"2002","unstructured":"L\u00e4mmel, R., Visser, J.: Typed combinators for generic traversal. In: Krishnamurthi, S., Ramakrishnan, C.R. (eds.) PADL 2002. LNCS, vol.\u00a02257, pp. 137\u2013154. Springer, Heidelberg (2002)"},{"key":"7_CR69","volume-title":"LaTeX : A Documentation Preparation System","author":"L. Lamport","year":"1986","unstructured":"Lamport, L.: LaTeX: A Documentation Preparation System. Addison-Wesley, Reading (1986)"},{"key":"7_CR70","doi-asserted-by":"publisher","first-page":"109","DOI":"10.1145\/331960.331977","volume-title":"Proceedings of the 2nd conference on Domain-specific languages (DSL 1999)","author":"D. Leijen","year":"1999","unstructured":"Leijen, D., Meijer, E.: Domain specific embedded compilers. In: Proceedings of the 2nd conference on Domain-specific languages (DSL 1999), pp. 109\u2013122. ACM Press, New York (1999)"},{"key":"7_CR71","unstructured":"Mak, S.: Developing interacting domain specific languages. Master\u2019s thesis, Utrecht University, Utrecht, The Netherlands, INF\/SCR-07-20 (November 2007)"},{"key":"7_CR72","unstructured":"Mann, K.D.: JavaServer Faces in Action. Manning, Greenwhich, NY, USA (2005)"},{"issue":"4","key":"7_CR73","doi-asserted-by":"publisher","first-page":"316","DOI":"10.1145\/1118890.1118892","volume":"37","author":"M. Mernik","year":"2005","unstructured":"Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Computing Surveys\u00a037(4), 316\u2013344 (2005)","journal-title":"ACM Computing Surveys"},{"key":"7_CR74","volume-title":"Beginning JBoss Seam","author":"J.F. Nusairat","year":"2007","unstructured":"Nusairat, J.F.: Beginning JBoss Seam. Apress, New York (2007)"},{"key":"7_CR75","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"138","DOI":"10.1007\/3-540-36579-6_11","volume-title":"Compiler Construction","author":"N. Nystrom","year":"2003","unstructured":"Nystrom, N., Clarkson, M.R., Myers, A.C.: Polyglot: An extensible compiler framework for Java. In: Hedin, G. (ed.) CC 2003. LNCS, vol.\u00a02622, pp. 138\u2013152. Springer, Heidelberg (2003)"},{"key":"7_CR76","unstructured":"OMG Architecture Board ORMSC. Model driven architecture. OMG document number ormsc\/2001-07-01 (July 2001), www.omg.org"},{"key":"7_CR77","unstructured":"Parr, T.: The Definitive ANTLR Reference: Building Domain-Specific Languages by Terence Parr. The Pragmatic Programmers (2007)"},{"key":"7_CR78","first-page":"224","volume-title":"WWW 2004: Proceedings of the 13th international conference on World Wide Web","author":"T.J. Parr","year":"2004","unstructured":"Parr, T.J.: Enforcing strict model-view separation in template engines. In: WWW 2004: Proceedings of the 13th international conference on World Wide Web, pp. 224\u2013233. ACM, New York (2004)"},{"key":"7_CR79","unstructured":"Peyton Jones, S.L. (ed.): Haskell98 Language and Libraries. The Revised Report. Cambridge University Press (2003)"},{"key":"7_CR80","first-page":"23","volume-title":"International Conference on Functional Programming (ICFP 2000)","author":"C. Queinnec","year":"2000","unstructured":"Queinnec, C.: The influence of browsers on evaluators or, continuations to program web servers. In: International Conference on Functional Programming (ICFP 2000), pp. 23\u201333. ACM, New York (2000)"},{"key":"7_CR81","volume-title":"The Synthesizer Generator: A System for Constructing Language-Based Editors","author":"T. Reps","year":"1988","unstructured":"Reps, T., Teitelbaum, T.: The Synthesizer Generator: A System for Constructing Language-Based Editors. Springer, New York (1988)"},{"issue":"2","key":"7_CR82","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1109\/MC.2006.58","volume":"39","author":"D.C. Schmidt","year":"2006","unstructured":"Schmidt, D.C.: Model-driven engineering. IEEE Computer\u00a039(2), 25\u201331 (2006)","journal-title":"IEEE Computer"},{"key":"7_CR83","doi-asserted-by":"crossref","unstructured":"Sheard, T., Peyton Jones, S.L.: Template metaprogramming for Haskell. In: Chakravarty, M.M.T. (ed.) ACM SIGPLAN Haskell Workshop 2002, pp. 1\u201316 (October 2002)","DOI":"10.1145\/581690.581691"},{"key":"7_CR84","doi-asserted-by":"publisher","first-page":"451","DOI":"10.1145\/1167473.1167511","volume-title":"Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications (OOPSLA 2006)","author":"C. Simonyi","year":"2006","unstructured":"Simonyi, C., Christerson, M., Clifford, S.: Intentional software. In: Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications (OOPSLA 2006), pp. 451\u2013464. ACM, New York (2006)"},{"issue":"1","key":"7_CR85","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1016\/S0164-1212(00)00089-3","volume":"56","author":"D. Spinellis","year":"2001","unstructured":"Spinellis, D.: Notable design patterns for domain specific languages. Journal of Systems and Software\u00a056(1), 91\u201399 (2001)","journal-title":"Journal of Systems and Software"},{"key":"7_CR86","unstructured":"Spinellis, D., Guruprasad, V.: Lightweight languages as software engineering tools. In: USENIX Conference on Domain-Specific Languages, , pp. 67\u201376. USENIX Association (October 1997)"},{"key":"7_CR87","volume-title":"Model-Driven Software Development","author":"T. Stahl","year":"2005","unstructured":"Stahl, T., V\u00f6lter, M.: Model-Driven Software Development. Wiley, Chichester (2005)"},{"key":"7_CR88","doi-asserted-by":"publisher","first-page":"221","DOI":"10.1023\/A:1010085415024","volume":"12","author":"G.L. Steele Jr","year":"1998","unstructured":"Steele Jr, G.L.: Growing a language. Higher-Order and Symbolic Computation\u00a012, 221\u2013236 (1998); (Text of invited talk at OOPSLA 1998)","journal-title":"Higher-Order and Symbolic Computation"},{"key":"7_CR89","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"150","DOI":"10.1007\/3-540-45800-X_13","volume-title":"\u00abUML\u00bb 2002 - The Unified Modeling Language. Model Engineering, Concepts, and Tools","author":"T. Sturm","year":"2002","unstructured":"Sturm, T., von Voss, J., Boger, M.: Generating code from uml with velocity templates. In: J\u00e9z\u00e9quel, J.-M., Hussmann, H., Cook, S. (eds.) UML 2002. LNCS, vol.\u00a02460, pp. 150\u2013161. Springer, Heidelberg (2002)"},{"key":"7_CR90","unstructured":"Sun Microsystems. JSR 220: Enterprise JavaBeansTM, Version 3.0. Java Persistence API (May 2, 2006)"},{"issue":"2","key":"7_CR91","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1145\/989341.989351","volume":"16","author":"A.L. Tharp","year":"1984","unstructured":"Tharp, A.L.: The impact of fourth generation programming languages. SIGCSE Bull\u00a016(2), 37\u201344 (1984)","journal-title":"SIGCSE Bull"},{"key":"7_CR92","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"192","DOI":"10.1007\/3-540-45587-6_13","volume-title":"Practical Aspects of Declarative Languages","author":"P. Thiemann","year":"2002","unstructured":"Thiemann, P.: WASH\/CGI: Server-side web scripting with sessions and typed, compositional forms. In: Krishnamurthi, S., Ramakrishnan, C.R. (eds.) PADL 2002. LNCS, vol.\u00a02257, pp. 192\u2013208. Springer, Heidelberg (2002)"},{"key":"7_CR93","unstructured":"Thomas, D., Hansson, D.H.: Agile Web Development with Rails. The Pragmatic Bookshelf (2005)"},{"key":"7_CR94","volume-title":"Efficient Parsing for Natural Languages. A Fast Algorithm for Practical Systems","author":"M. Tomita","year":"1985","unstructured":"Tomita, M.: Efficient Parsing for Natural Languages. A Fast Algorithm for Practical Systems. Kluwer Academic Publishers, Dordrecht (1985)"},{"key":"7_CR95","doi-asserted-by":"crossref","unstructured":"Tratt, L.: Domain specific language implementation via compile-time meta-programming. ACM Transactions on Programming Languages and Systems (to appear, 2009)","DOI":"10.1145\/1391956.1391958"},{"issue":"3","key":"7_CR96","doi-asserted-by":"publisher","first-page":"259","DOI":"10.1002\/(SICI)1097-024X(200003)30:3<259::AID-SPE298>3.0.CO;2-Y","volume":"30","author":"M.G.J. Brand van den","year":"2000","unstructured":"van den Brand, M.G.J., de Jong, H., Klint, P., Olivier, P.: Efficient annotated terms. Software, Practice & Experience\u00a030(3), 259\u2013291 (2000)","journal-title":"Software, Practice & Experience"},{"issue":"4","key":"7_CR97","doi-asserted-by":"publisher","first-page":"334","DOI":"10.1145\/567097.567099","volume":"24","author":"M.G.J. Brand van den","year":"2002","unstructured":"van den Brand, M.G.J., Heering, J., Klint, P., Olivier, P.A.: Compiling language definitions: the ASF+SDF compiler. ACM Transactions on Programming Languages and Systems\u00a024(4), 334\u2013368 (2002)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"issue":"2","key":"7_CR98","doi-asserted-by":"publisher","first-page":"75","DOI":"10.1002\/(SICI)1096-908X(199803\/04)10:2<75::AID-SMR168>3.0.CO;2-5","volume":"10","author":"A. Deursen van","year":"1998","unstructured":"van Deursen, A., Klint, P.: Little languages: Little maintenance? Journal of Software Maintenance\u00a010(2), 75\u201392 (1998)","journal-title":"Journal of Software Maintenance"},{"issue":"6","key":"7_CR99","doi-asserted-by":"publisher","first-page":"26","DOI":"10.1145\/352029.352035","volume":"35","author":"A. Deursen van","year":"2000","unstructured":"van Deursen, A., Klint, P., Visser, J.: Domain-specific languages: An annotated bibliography. SIGPLAN Notices\u00a035(6), 26\u201336 (2000)","journal-title":"SIGPLAN Notices"},{"key":"7_CR100","unstructured":"van Wijngaarden, J.: Code generation from a domain specific language. Designing and implementing complex program transformations. Master\u2019s thesis, Utrecht University, Utrecht, The Netherlands, INF\/SCR-03-29 (July 2003)"},{"key":"7_CR101","unstructured":"Visser, E.: Syntax Definition for Language Prototyping. PhD thesis, University of Amsterdam (September 1997)"},{"key":"7_CR102","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"299","DOI":"10.1007\/3-540-45821-2_19","volume-title":"Generative Programming and Component Engineering","author":"E. Visser","year":"2002","unstructured":"Visser, E.: Meta-programming with concrete object syntax. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol.\u00a02487, pp. 299\u2013315. Springer, Heidelberg (2002)"},{"key":"7_CR103","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"216","DOI":"10.1007\/978-3-540-25935-0_13","volume-title":"Domain-Specific Program Generation","author":"E. Visser","year":"2004","unstructured":"Visser, E.: Program transformation with Stratego\/XT: Rules, strategies, tools, and systems in StrategoXT-0.9. In: Lengauer, C., Batory, D., Consel, C., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol.\u00a03016, pp. 216\u2013238. Springer, Heidelberg (2004)"},{"issue":"1","key":"7_CR104","doi-asserted-by":"publisher","first-page":"831","DOI":"10.1016\/j.jsc.2004.12.011","volume":"40","author":"E. Visser","year":"2005","unstructured":"Visser, E.: A survey of strategies in rule-based program transformation systems. Journal of Symbolic Computation\u00a040(1), 831\u2013873 (2005); Special issue on Reduction Strategies in Rewriting and Programming","journal-title":"Journal of Symbolic Computation"},{"key":"7_CR105","doi-asserted-by":"publisher","first-page":"13","DOI":"10.1145\/289423.289425","volume-title":"Proceedings of the third ACM SIGPLAN International Conference on Functional Programming (ICFP 1998)","author":"E. Visser","year":"1998","unstructured":"Visser, E., Benaissa, Z.-e.-A., Tolmach, A.: Building program optimizers with rewriting strategies. In: Proceedings of the third ACM SIGPLAN International Conference on Functional Programming (ICFP 1998), pp. 13\u201326. ACM Press, New York (1998)"},{"key":"7_CR106","unstructured":"W3C. Cascading Style Sheets, level 2. CSS2 Specification (May 1998), http:\/\/www.w3.org\/TR\/REC-CSS2\/"},{"key":"7_CR107","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"194","DOI":"10.1007\/978-3-540-72901-3_15","volume-title":"Model Driven Architecture - Foundations and Applications","author":"J. Warmer","year":"2007","unstructured":"Warmer, J.: A model driven software factory using domain specific languages. In: Akehurst, D.H., Vogel, R., Paige, R.F. (eds.) ECMDA-FA. LNCS, vol.\u00a04530, pp. 194\u2013203. Springer, Heidelberg (2007)"},{"key":"7_CR108","first-page":"199","volume-title":"Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 2007)","author":"B. Wiedermann","year":"2007","unstructured":"Wiedermann, B., Cook, W.R.: Extracting queries by static analysis of transparent persistence. In: Felleisen, M. (ed.) Proceedings of the 34th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 2007), pp. 199\u2013210. ACM, New York (2007)"},{"key":"7_CR109","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"575","DOI":"10.1007\/978-3-540-73589-2_27","volume-title":"ECOOP 2007 \u2013 Object-Oriented Programming","author":"E.V. Wyk","year":"2007","unstructured":"Wyk, E.V., Krishnan, L., Bodin, D., Schwerdfeger, A.: Attribute grammar-based language extensions for Java. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol.\u00a04609, pp. 575\u2013599. Springer, Heidelberg (2007)"}],"container-title":["Lecture Notes in Computer Science","Generative and Transformational Techniques in Software Engineering II"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-88643-3_7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,14]],"date-time":"2019-05-14T08:56:27Z","timestamp":1557824187000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-88643-3_7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2008]]},"ISBN":["9783540886426","9783540886433"],"references-count":110,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-88643-3_7","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2008]]}}}