{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,5]],"date-time":"2024-09-05T06:06:16Z","timestamp":1725516376848},"publisher-location":"Berlin, Heidelberg","reference-count":26,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540690696"},{"type":"electronic","value":"9783540690733"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"DOI":"10.1007\/978-3-540-69073-3_5","type":"book-chapter","created":{"date-parts":[[2008,8,12]],"date-time":"2008-08-12T12:07:43Z","timestamp":1218542863000},"page":"34-46","source":"Crossref","is-referenced-by-count":5,"title":["Designing Syntax Embeddings and Assimilations for Language Libraries"],"prefix":"10.1007","author":[{"given":"Martin","family":"Bravenboer","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Eelco","family":"Visser","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"5_CR1","first-page":"31","volume-title":"Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2001)","author":"J. Bachrach","year":"2001","unstructured":"Bachrach, J., Playford, K.: The Java syntactic extender (JSE). In: Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2001), pp. 31\u201342. ACM, New York (2001)"},{"key":"5_CR2","doi-asserted-by":"publisher","first-page":"270","DOI":"10.1145\/512529.512562","volume-title":"Programming Language Design and Implementation (PLDI 2002)","author":"J. Baker","year":"2002","unstructured":"Baker, J., Hsieh, W.: Maya: multiple-dispatch syntax extension in java. In: Programming Language Design and Implementation (PLDI 2002), pp. 270\u2013281. ACM, New York (2002)"},{"key":"5_CR3","first-page":"143","volume-title":"International Conference on Software Reuse (ICSR 1998)","author":"D. Batory","year":"1998","unstructured":"Batory, D., Lofaso, B., Smaragdakis, Y.: JTS: tools for implementing domain-specific languages. In: International Conference on Software Reuse (ICSR 1998), pp. 143\u2013153. IEEE, Los Alamitos (1998)"},{"key":"5_CR4","series-title":"ENTCS","volume-title":"Language Descriptions, Tools and Applications (LDTA 2004)","author":"A. Begel","year":"2004","unstructured":"Begel, A., Graham, S.L.: Language analysis and tools for input stream ambiguities. In: Language Descriptions, Tools and Applications (LDTA 2004). ENTCS, Elsevier, Amsterdam (April 2004)"},{"key":"5_CR5","volume-title":"Language Descriptions, Tools and Applications (LDTA 2003)","author":"C. Brabrand","year":"2003","unstructured":"Brabrand, C., Vanggaard, M., Schwartzbach, M.I.: The metafront system: Extensible parsing and transformation. In: Language Descriptions, Tools and Applications (LDTA 2003), ACM, New York (April 2003)"},{"key":"5_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"297","DOI":"10.1007\/11877028_10","volume-title":"Generative and Transformational Techniques in Software Engineering","author":"M. Bravenboer","year":"2006","unstructured":"Bravenboer, M., de Groot, R., Visser, E.: MetaBorg in action: Examples of domain-specific language embedding and assimilation using Stratego\/XT. In: L\u00e4mmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol.\u00a04143, pp. 297\u2013311. Springer, Heidelberg (2006)"},{"key":"5_CR7","doi-asserted-by":"publisher","first-page":"3","DOI":"10.1145\/1289971.1289975","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":"5_CR8","volume-title":"Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2006)","author":"M. Bravenboer","year":"2006","unstructured":"Bravenboer, M., Tanter, E., Visser, E.: Declarative, formal, and extensible syntax definition for AspectJ. A case for scannerless generalized-LR parsing. In: Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2006), ACM, New York (October 2006)"},{"issue":"1\u20132","key":"5_CR9","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":"5_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"157","DOI":"10.1007\/11561347_12","volume-title":"Generative Programming and Component Engineering","author":"M. Bravenboer","year":"2005","unstructured":"Bravenboer, M., Vermaas, R., Vinju, J.J., Visser, E.: Generalized type-based disambiguation of meta programs with concrete object syntax. In: Gl\u00fcck, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol.\u00a03676, pp. 157\u2013172. Springer, Heidelberg (2005)"},{"key":"5_CR11","first-page":"365","volume-title":"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: Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2004), pp. 365\u2013383. ACM, New York (October 2004)"},{"issue":"2","key":"5_CR12","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":"5_CR13","doi-asserted-by":"publisher","first-page":"36","DOI":"10.1145\/581478.581483","volume-title":"International Conference on Functional Programming (ICFP 2002)","author":"B. Ford","year":"2002","unstructured":"Ford, B.: Packrat parsing: simple, powerful, lazy, linear time, functional pearl. In: International Conference on Functional Programming (ICFP 2002), pp. 36\u201347. ACM, New York (2002)"},{"key":"5_CR14","volume-title":"Programming Language Design and Implementation (PLDI 2006)","author":"R. Grimm","year":"2006","unstructured":"Grimm, R.: Better extensibility through modular syntax. In: Cook, W.R. (ed.) Programming Language Design and Implementation (PLDI 2006), ACM, New York (June 2006)"},{"key":"5_CR15","unstructured":"Kiczales, G., Lamping, J.: L.H.R., Jr., Ruf, E.: Macros that reach out and touch somewhere. Technical report, Xerox Corporation (December 1991)"},{"issue":"4","key":"5_CR16","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":"5_CR17","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 and ETAPS 2003. LNCS, vol.\u00a02622, pp. 138\u2013152. Springer, Heidelberg (2003)"},{"key":"5_CR18","unstructured":"Rekers, J.: Parser Generation for Interactive Environments. PhD thesis, University of Amsterdam (1992)"},{"key":"5_CR19","doi-asserted-by":"crossref","unstructured":"Salomon, D.J., Cormack, G.V.: Scannerless NSLR(1) parsing of programming languages. ACM SIGPLAN Notices\u00a024(7), 170\u2013178 (1989); In: PLDI 1989 (1989)","DOI":"10.1145\/74818.74833"},{"key":"5_CR20","unstructured":"de Rauglaudre, D.: Camlp4 reference manual (September 2003)"},{"key":"5_CR21","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":"5_CR22","first-page":"63","volume-title":"Generative Programming and Component Engineering (GPCE 2007)","author":"E. Wyk Van","year":"2007","unstructured":"Van Wyk, E., Schwerdfeger, A.: Context-aware scanning for parsing extensible languages. In: Lawall, J. (ed.) Generative Programming and Component Engineering (GPCE 2007), pp. 63\u201372. ACM, New York (October 2007)"},{"key":"5_CR23","unstructured":"Visser, E.: Syntax Definition for Language Prototyping. PhD thesis, University of Amsterdam (September 1997)"},{"key":"5_CR24","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":"5_CR25","unstructured":"van Wijngaarden, J., Visser, E.: Program transformation mechanics. a classification of mechanisms for program transformation with a survey of existing transformation systems. Technical Report UU-CS-2003-048, Institute of Information and Computing Sciences, Utrecht University (May 2003)"},{"key":"5_CR26","series-title":"Lecture Notes in Computer Science","first-page":"1","volume-title":"Generative Programming and Component Engineering","author":"D. Zook","year":"2004","unstructured":"Zook, D., Huang, S.S., Smaragdakis, Y.: Generating AspectJ programs with Meta-AspectJ. In: Karsai, G., Visser, E. (eds.) GPCE 2004. LNCS, vol.\u00a03286, pp. 1\u201319. Springer, Heidelberg (2004)"}],"container-title":["Lecture Notes in Computer Science","Models in Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-69073-3_5.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,11,19]],"date-time":"2020-11-19T00:31:16Z","timestamp":1605745876000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-69073-3_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[null]]},"ISBN":["9783540690696","9783540690733"],"references-count":26,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-69073-3_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[]}}