{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T08:13:14Z","timestamp":1743063194295,"version":"3.40.3"},"publisher-location":"Cham","reference-count":26,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319452784"},{"type":"electronic","value":"9783319452791"}],"license":[{"start":{"date-parts":[[2016,1,1]],"date-time":"2016-01-01T00:00:00Z","timestamp":1451606400000},"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":[[2016]]},"DOI":"10.1007\/978-3-319-45279-1_4","type":"book-chapter","created":{"date-parts":[[2016,9,16]],"date-time":"2016-09-16T16:23:45Z","timestamp":1474043025000},"page":"46-61","source":"Crossref","is-referenced-by-count":0,"title":["Memoized Zipper-Based Attribute Grammars"],"prefix":"10.1007","author":[{"given":"Jo\u00e3o Paulo","family":"Fernandes","sequence":"first","affiliation":[]},{"given":"Pedro","family":"Martins","sequence":"additional","affiliation":[]},{"given":"Alberto","family":"Pardo","sequence":"additional","affiliation":[]},{"given":"Jo\u00e3o","family":"Saraiva","sequence":"additional","affiliation":[]},{"given":"Marcos","family":"Viera","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2016,9,17]]},"reference":[{"key":"4_CR1","unstructured":"Badouel, E., Fotsing, B., Tchougong, R.: Yet another implementation of attribute evaluation. Research Report RR-6315, Inria (2007)"},{"issue":"5","key":"4_CR2","doi-asserted-by":"crossref","first-page":"39","DOI":"10.1016\/j.entcs.2011.02.015","volume":"229","author":"E Badouel","year":"2011","unstructured":"Badouel, E., Fotsing, B., Tchougong, R.: Attribute grammars as recursion schemes over cyclic representations of zippers. Electron. Notes Theory Comput. Sci. 229(5), 39\u201356 (2011)","journal-title":"Electron. Notes Theory Comput. Sci."},{"key":"4_CR3","unstructured":"Balestrieri, F.: The productivity of polymorphic stream equations and the composition of circular traversals. PhD thesis, University of Nottingham (2015)"},{"key":"4_CR4","doi-asserted-by":"crossref","first-page":"239","DOI":"10.1007\/BF00264249","volume":"21","author":"RS Bird","year":"1984","unstructured":"Bird, R.S.: Using circular programs to eliminate multiple traversals of data. Acta Inf. 21, 239\u2013250 (1984)","journal-title":"Acta Inf."},{"key":"4_CR5","unstructured":"de Moor, O., Backhouse, K., Swierstra, D.: First-class attribute grammars. In: 3rd Workshop on Attribute Grammars and their Applications, Ponte de Lima, Portugal, pp. 1\u201320 (2000)"},{"key":"4_CR6","doi-asserted-by":"crossref","unstructured":"Dijkstra, A., Fokker, J., Swierstra, S.D.: The architecture of the Utrecht Haskell compiler. In: Haskell Symposium, pp. 93\u2013104 (2009)","DOI":"10.1145\/1596638.1596650"},{"key":"4_CR7","unstructured":"Dijkstra, A., Swierstra, D.: Typing Haskell with an attribute grammar (part I). Technical report UU-CS-2004-037, Institute of Information and Computing Sciences, Utrecht University (2004)"},{"key":"4_CR8","doi-asserted-by":"crossref","unstructured":"Fernandes, J.P., Saraiva, J.: Tools and libraries to model and manipulate circular programs. In: Symposium on Partial Evaluation and Program Manipulation, pp. 102\u2013111. ACM (2007)","DOI":"10.1145\/1244381.1244399"},{"issue":"5","key":"4_CR9","doi-asserted-by":"crossref","first-page":"549","DOI":"10.1017\/S0956796897002864","volume":"7","author":"G Huet","year":"1997","unstructured":"Huet, G.: The zipper. J. Funct. Program. 7(5), 549\u2013554 (1997)","journal-title":"J. Funct. Program."},{"key":"4_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"294","DOI":"10.1007\/BFb0026439","volume-title":"Compiler Construction","author":"U Kastens","year":"1998","unstructured":"Kastens, U., Pfahler, P., Jung, M.: The Eli system. In: Koskimies, K. (ed.) CC 1998. LNCS, vol. 1383, pp. 294\u2013297. Springer, Heidelberg (1998)"},{"key":"4_CR11","doi-asserted-by":"crossref","unstructured":"Kiselyov, O., L\u00e4mmel, R., Schupke, K.: Strongly typed heterogeneous collections. In: Workshop on Haskell, pp. 96\u2013107. ACM (2004)","DOI":"10.1145\/1017472.1017488"},{"key":"4_CR12","unstructured":"Knuth, D.: Semantics of context-free languages. Math, Syst. Theory, 2(2) (1968). Correction: Math. Syst. Theory, 5(1) (1971)"},{"key":"4_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"298","DOI":"10.1007\/BFb0026440","volume-title":"Compiler Construction","author":"M Kuiper","year":"1998","unstructured":"Kuiper, M., Saraiva, J.: Lrc \u2014 a generator for incremental language-oriented tools. In: Koskimies, K. (ed.) CC 1998. LNCS, vol. 1383, pp. 298\u2013301. Springer, Heidelberg (1998)"},{"issue":"1","key":"4_CR14","doi-asserted-by":"crossref","first-page":"21","DOI":"10.1016\/j.scico.2005.06.005","volume":"68","author":"E Magnusson","year":"2007","unstructured":"Magnusson, E., Hedin, G.: Circular reference attributed grammars - their evaluation and applications. Sci. Comput. Program. 68(1), 21\u201337 (2007)","journal-title":"Sci. Comput. Program."},{"key":"4_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"135","DOI":"10.1007\/978-3-642-40922-6_10","volume-title":"Programming Languages","author":"P Martins","year":"2013","unstructured":"Martins, P., Fernandes, J.P., Saraiva, J.: Zipper-based attribute grammars and their extensions. In: Du Bois, A.R., Trinder, P. (eds.) SBLP 2013. LNCS, vol. 8129, pp. 135\u2013149. Springer, Heidelberg (2013)"},{"key":"4_CR16","doi-asserted-by":"crossref","unstructured":"Martins, P., Fernandes, J.P., Saraiva, J., Van Wyk, E., Sloane, A.: Embedding attribute grammars and their extensions using functional zippers. Science of Computer Programming (2016, in Press)","DOI":"10.1016\/j.scico.2016.03.005"},{"key":"4_CR17","doi-asserted-by":"crossref","unstructured":"Middelkoop, A., Dijkstra, A., Swierstra, S.D.: Iterative type inference with attribute grammars. In International Conference on Generative Programming, pp. 43\u201352. ACM (2010)","DOI":"10.1145\/1868294.1868302"},{"key":"4_CR18","doi-asserted-by":"crossref","unstructured":"Norell, U., Gerdes, A.: Attribute grammars in Erlang. In: Workshop on Erlang, 2015, pp. 1\u201312. ACM (2015)","DOI":"10.1145\/2804295.2804296"},{"key":"4_CR19","unstructured":"Saraiva, J.: Purely functional implementation of attribute grammars. PhD thesis, Utrecht University, The Netherlands, December 1999"},{"key":"4_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"307","DOI":"10.1007\/978-3-540-39815-8_19","volume-title":"Generative Programming and Component Engineering","author":"J Saraiva","year":"2003","unstructured":"Saraiva, J., Swierstra, S.D.: Generating spreadsheet-like tools from strong attribute grammars. In: Pfenning, F., Macko, M. (eds.) GPCE 2003. LNCS, vol. 2830, pp. 307\u2013323. Springer, Heidelberg (2003)"},{"issue":"7","key":"4_CR21","doi-asserted-by":"crossref","first-page":"205","DOI":"10.1016\/j.entcs.2010.08.043","volume":"253","author":"AM Sloane","year":"2010","unstructured":"Sloane, A.M., Kats, L.C.L., Visser, E.: A pure object-oriented embedding of attribute grammars. Electron. Notes Theory Comput. Sci. 253(7), 205\u2013219 (2010)","journal-title":"Electron. Notes Theory Comput. Sci."},{"key":"4_CR22","series-title":"Lecture Notes in Computer Science","volume-title":"Advanced Functional Programming","author":"D Swierstra","year":"1999","unstructured":"Swierstra, D., Azero, P., Saraiva, J.: Designing and implementing combinator languages. In: Swierstra, S.D., Oliveira, J.N. (eds.) AFP 1998. LNCS, vol. 1608. Springer, Heidelberg (1999)"},{"key":"4_CR23","unstructured":"Uustalu, T., Vene, V.: Comonadic functional attribute evaluation. In: Trends in Functional Programming, vol. 10, pp. 145\u2013162. Intellect Books (2005)"},{"issue":"2","key":"4_CR24","doi-asserted-by":"crossref","first-page":"103","DOI":"10.1016\/j.entcs.2008.03.047","volume":"203","author":"E Wyk Van","year":"2008","unstructured":"Van Wyk, E., Bodin, D., Gao, J., Krishnan, L.: Silver: an extensible attribute grammar system. Electron. Notes Theory Comput. Sci. 203(2), 103\u2013116 (2008)","journal-title":"Electron. Notes Theory Comput. Sci."},{"key":"4_CR25","doi-asserted-by":"crossref","unstructured":"Viera, M., Swierstra, D., Swierstra, W.: First-class, attribute grammars fly: how to do aspect oriented programming in Haskell. In: International Conference on Functional Programming, pp. 245\u2013256. ACM (2009)","DOI":"10.1145\/1596550.1596586"},{"issue":"7","key":"4_CR26","doi-asserted-by":"crossref","first-page":"131","DOI":"10.1145\/74818.74830","volume":"24","author":"H Vogt","year":"1989","unstructured":"Vogt, H., Swierstra, S.D., Kuiper, M.: Higher order attribute grammars. SIGPLAN Notices 24(7), 131\u2013145 (1989)","journal-title":"SIGPLAN Notices"}],"container-title":["Lecture Notes in Computer Science","Programming Languages"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-45279-1_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2017,6,24]],"date-time":"2017-06-24T19:01:07Z","timestamp":1498330867000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-45279-1_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016]]},"ISBN":["9783319452784","9783319452791"],"references-count":26,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-45279-1_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2016]]}}}