{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,26]],"date-time":"2025-03-26T19:38:31Z","timestamp":1743017911478,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":17,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642331817"},{"type":"electronic","value":"9783642331824"}],"license":[{"start":{"date-parts":[[2012,1,1]],"date-time":"2012-01-01T00:00:00Z","timestamp":1325376000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2012,1,1]],"date-time":"2012-01-01T00:00:00Z","timestamp":1325376000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-33182-4_12","type":"book-chapter","created":{"date-parts":[[2012,9,1]],"date-time":"2012-09-01T21:30:53Z","timestamp":1346535053000},"page":"150-164","source":"Crossref","is-referenced-by-count":1,"title":["Attribute Grammar Macros"],"prefix":"10.1007","author":[{"given":"Marcos","family":"Viera","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Doaitse","family":"Swierstra","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"12_CR1","doi-asserted-by":"crossref","unstructured":"Baars, A.I., Doaitse Swierstra, S., Viera, M.: Typed transformations of typed abstract syntax. In: TLDI 2009, pp. 15\u201326. ACM (2009)","DOI":"10.1145\/1481861.1481865"},{"key":"12_CR2","doi-asserted-by":"crossref","unstructured":"Baars, A.I., Doaitse Swierstra, S., Viera, M.: Typed transformations of typed grammars: The left corner transform. In: LDTA 2009. ENTCS (2009)","DOI":"10.1145\/1481861.1481865"},{"issue":"1-2","key":"12_CR3","doi-asserted-by":"publisher","first-page":"52","DOI":"10.1016\/j.scico.2007.11.003","volume":"72","author":"M. Bravenboer","year":"2008","unstructured":"Bravenboer, M., Kalleberg, K.T., Vermaas, R., Visser, E.: Stratego\/XT 0.17. A language and toolset for program transformation. Science of Computer Programming\u00a072(1-2), 52\u201370 (2008)","journal-title":"Science of Computer Programming"},{"key":"12_CR4","unstructured":"de Moor, O., Backhouse, K., Doaitse Swierstra, S.: First-class attribute grammars. Informatica (Slovenia)\u00a024(3) (2000)"},{"key":"12_CR5","doi-asserted-by":"crossref","unstructured":"Dijkstra, A., Fokker, J., Doaitse Swierstra, S.: The architecture of the Utrecht Haskell compiler. In: Haskell 2009, pp. 93\u2013104. ACM (2009)","DOI":"10.1145\/1596638.1596650"},{"key":"12_CR6","doi-asserted-by":"crossref","unstructured":"Heeren, B., Hage, J., Doaitse Swierstra, S.: Scripting the type inference process. In: ICFP 2003, pp. 3\u201313. ACM Press (2003)","DOI":"10.1145\/944746.944707"},{"key":"12_CR7","doi-asserted-by":"crossref","unstructured":"Kiselyov, O., L\u00e4mmel, R., Schupke, K.: Strongly typed heterogeneous collections. In: Haskell 2004, pp. 96\u2013107. ACM Press (2004)","DOI":"10.1145\/1017472.1017488"},{"issue":"11","key":"12_CR8","doi-asserted-by":"publisher","first-page":"790","DOI":"10.1145\/365876.365879","volume":"9","author":"B.M. Leavenworth","year":"1966","unstructured":"Leavenworth, B.M.: Syntax macros and extended translation. Commun. ACM\u00a09(11), 790\u2013793 (1966)","journal-title":"Commun. ACM"},{"key":"12_CR9","doi-asserted-by":"crossref","unstructured":"Maddox, W.: Semantically-sensitive macroprocessing. Technical report, Berkeley, CA, USA (1989)","DOI":"10.21236\/ADA632162"},{"issue":"5","key":"12_CR10","doi-asserted-by":"publisher","first-page":"375","DOI":"10.1017\/S0956796802004355","volume":"12","author":"C. McBride","year":"2002","unstructured":"McBride, C.: Faking it simulating dependent types in Haskell. J. Funct. Program.\u00a012(5), 375\u2013392 (2002)","journal-title":"J. Funct. Program."},{"key":"12_CR11","doi-asserted-by":"crossref","unstructured":"Schrijvers, T., Oliveira, B.C.d.S.: Monads, zippers and views: virtualizing the monad stack. In: ICFP 2011, pp. 32\u201344. ACM (2011)","DOI":"10.1145\/2034574.2034781"},{"key":"12_CR12","unstructured":"Doaitse Swierstra, S.: Parser combinators: from toys to tools. In: Haskell Workshop (2000)"},{"key":"12_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"252","DOI":"10.1007\/978-3-642-03153-3_6","volume-title":"Language Engineering and Rigorous Software Development","author":"S. Doaitse Swierstra","year":"2009","unstructured":"Doaitse Swierstra, S.: Combinator Parsing: A Short Tutorial. In: Bove, A., Barbosa, L.S., Pardo, A., Pinto, J.S. (eds.) LerNet 2008. LNCS, vol.\u00a05520, pp. 252\u2013300. Springer, Heidelberg (2009)"},{"key":"12_CR14","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"128","DOI":"10.1007\/3-540-45937-5_11","volume-title":"Compiler Construction","author":"E. Van Wyk","year":"2002","unstructured":"Van Wyk, E., de Moor, O., Backhouse, K., Kwiatkowski, P.: Forwarding in Attribute Grammars for Modular Language Design. In: Horspool, R.N. (ed.) CC 2002. LNCS, vol.\u00a02304, pp. 128\u2013142. Springer, Heidelberg (2002)"},{"issue":"1-2","key":"12_CR15","doi-asserted-by":"publisher","first-page":"39","DOI":"10.1016\/j.scico.2009.07.004","volume":"75","author":"E. Van Wyk","year":"2010","unstructured":"Van Wyk, E., Bodin, D., Gao, J., Krishnan, L.: Silver: an extensible attribute grammar system. Science of Computer Programming\u00a075(1-2), 39\u201354 (2010)","journal-title":"Science of Computer Programming"},{"key":"12_CR16","doi-asserted-by":"crossref","unstructured":"Viera, M., Doaitse Swierstra, S., Swierstra, W.: Attribute grammars fly first-class: how to do aspect oriented programming in Haskell. In: ICFP 2009, pp. 245\u2013256. ACM (2009)","DOI":"10.1145\/1631687.1596586"},{"key":"12_CR17","unstructured":"Wirth, N.: Compiler construction. International computer science series. Addison-Wesley (1996)"}],"container-title":["Lecture Notes in Computer Science","Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-33182-4_12","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,12,23]],"date-time":"2021-12-23T06:06:02Z","timestamp":1640239562000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-642-33182-4_12"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642331817","9783642331824"],"references-count":17,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-33182-4_12","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2012]]}}}