{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,26]],"date-time":"2025-03-26T09:28:57Z","timestamp":1742981337005,"version":"3.40.3"},"publisher-location":"Cham","reference-count":23,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031849237"},{"type":"electronic","value":"9783031849244"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-3-031-84924-4_3","type":"book-chapter","created":{"date-parts":[[2025,3,17]],"date-time":"2025-03-17T12:01:16Z","timestamp":1742212876000},"page":"35-52","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["The Scenic Route to\u00a0Deforestation"],"prefix":"10.1007","author":[{"given":"Vincent","family":"Robinson","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Steven","family":"Libby","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2025,3,18]]},"reference":[{"issue":"1","key":"3_CR1","doi-asserted-by":"publisher","first-page":"795","DOI":"10.1016\/j.jsc.2004.01.001","volume":"40","author":"E Albert","year":"2005","unstructured":"Albert, E., Hanus, M., Huch, F., et al.: Operational semantics for declarative multi-paradigm languages. J. Symb. Comput. 40(1), 795\u2013829 (2005). https:\/\/doi.org\/10.1016\/j.jsc.2004.01.001. ISSN 0747-7171","journal-title":"J. Symb. Comput."},{"issue":"4","key":"3_CR2","doi-asserted-by":"publisher","first-page":"776","DOI":"10.1145\/347476.347484","volume":"47","author":"S Antoy","year":"2000","unstructured":"Antoy, S., Echahed, R., Hanus, M.: A needed narrowing strategy. J. ACM 47(4), 776\u2013822 (2000). https:\/\/doi.org\/10.1145\/347476.347484. ISSN 0004\u20135411","journal-title":"J. ACM"},{"key":"3_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"67","DOI":"10.1007\/3-540-45788-7_4","volume-title":"Functional and Logic Programming","author":"S Antoy","year":"2002","unstructured":"Antoy, S., Hanus, M.: Functional logic design patterns. In: Hu, Z., Rodr\u00edguez-Artalejo, M. (eds.) FLOPS 2002. LNCS, vol. 2441, pp. 67\u201387. Springer, Heidelberg (2002). https:\/\/doi.org\/10.1007\/3-540-45788-7_4"},{"key":"3_CR4","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"19","DOI":"10.1007\/978-3-642-22531-4_2","volume-title":"Functional and Constraint Logic Programming","author":"S Antoy","year":"2011","unstructured":"Antoy, S., Hanus, M.: New functional logic design patterns. In: Kuchen, H. (ed.) WFLP 2011. LNCS, vol. 6816, pp. 19\u201334. Springer, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-22531-4_2"},{"key":"3_CR5","doi-asserted-by":"crossref","unstructured":"Antoy, S., Jost, A.: A new functional-logic compiler for curry: sprite. CoRR abs\/1608.04016 (2016)","DOI":"10.1007\/978-3-319-63139-4_6"},{"key":"3_CR6","doi-asserted-by":"publisher","unstructured":"Augustsson, L., et al.: The verse calculus: a core calculus for functional logic programming. Proc. ACM Program. Lang. 7(ICFP) (2023). https:\/\/doi.org\/10.1145\/3607845","DOI":"10.1145\/3607845"},{"key":"3_CR7","doi-asserted-by":"publisher","unstructured":"B\u00f6hm, J., Hanus, M., Teegen, F.: From non-determinism to goroutines: a fair implementation of curry in Go. In: Proceedings of the 23rd International Symposium on Principles and Practice of Declarative Programming, PPDP 2021. Association for Computing Machinery, Tallinn (2021). https:\/\/doi.org\/10.1145\/3479394.3479411. ISBN 9781450386890","DOI":"10.1145\/3479394.3479411"},{"key":"3_CR8","doi-asserted-by":"publisher","unstructured":"Caballero, R., L\u00f3pez-Fraguas, F.J.: A functional-logic perspective of parsing. In: Middeldorp, A., Sato, T. (eds.) FLOPS 1999. LNCS, vol. 1722, pp. 85\u201399. Springer, Heidelberg (1999). https:\/\/doi.org\/10.1007\/10705424_6. ISBN 978-3-540-47950-5","DOI":"10.1007\/10705424_6"},{"key":"3_CR9","doi-asserted-by":"publisher","unstructured":"Christiansen, J., Seidel, D., Voigtl\u00e4nder, J.: Free theorems for functional logic programs. In: Proceedings of the 4th ACM SIGPLAN Workshop on Programming Languages Meets Program Verification, PLPV 2010, pp. 39\u201348. Association for Computing Machinery, Madrid (2010). https:\/\/doi.org\/10.1145\/1707790.170779. ISBN 9781605588902","DOI":"10.1145\/1707790.170779"},{"key":"3_CR10","doi-asserted-by":"publisher","unstructured":"Coutts, D., Leshchinskiy, R., Stewart, D.: Stream fusion: from lists to streams to nothing at all. In: Proceedings of the 12th ACM SIGPLAN International Conference on Functional Programming, ICFP 2007, pp. 315\u2013326. Association for Computing Machinery, Freiburg (2007). https:\/\/doi.org\/10.1145\/1291151.1291199. ISBN 9781595938152","DOI":"10.1145\/1291151.1291199"},{"key":"3_CR11","doi-asserted-by":"crossref","unstructured":"Davey, B.A., Priestley, H.A.: Introduction to Lattices and Order, 2nd edn. Cambridge University Press (2002)","DOI":"10.1017\/CBO9780511809088"},{"key":"3_CR12","doi-asserted-by":"publisher","unstructured":"Gill, A., Launchbury, J., Peyton Jones, S.L.: A short cut to deforestation. In: Proceedings of the Conference on Functional Programming Languages and Computer Architecture, FPCA 1993, pp. 223\u2013232. Association for Computing Machinery, Copenhagen (1993). https:\/\/doi.org\/10.1145\/165180.165214. ISBN 089791595X","DOI":"10.1145\/165180.165214"},{"key":"3_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"47","DOI":"10.1007\/3-540-46584-7_4","volume-title":"Practical Aspects of Declarative Languages","author":"M Hanus","year":"1999","unstructured":"Hanus, M.: A functional logic programming approach to graphical user interfaces. In: Pontelli, E., Santos Costa, V. (eds.) PADL 2000. LNCS, vol. 1753, pp. 47\u201362. Springer, Heidelberg (1999). https:\/\/doi.org\/10.1007\/3-540-46584-7_4"},{"key":"3_CR14","doi-asserted-by":"publisher","unstructured":"Hanus, M., Teegen, F.: Adding Data to curry. In: Hofstedt, P., Abreu, S., John, U., Kuchen, H., Seipel, D. (eds.) INAP\/WLP\/WFLP -2019. LNCS (LNAI), vol. 12057, pp. 230\u2013246. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-46714-2_15. ISBN 978-3-030-46713-5","DOI":"10.1007\/978-3-030-46714-2_15"},{"key":"3_CR15","doi-asserted-by":"crossref","unstructured":"Libby, S.: Making curry with rice: an optimizing compiler for curry. Ph.D. thesis. Portland State University (2022)","DOI":"10.1007\/978-3-031-24841-2_1"},{"key":"3_CR16","unstructured":"Libby, S.: Rice curry compiler (2022). https:\/\/github.com\/slibby05\/rice"},{"key":"3_CR17","doi-asserted-by":"publisher","unstructured":"Libby, S.: RICE: an optimizing curry compiler. In: Hanus, M., Inclezan, D. (eds.) PADL 2023. LNCS, vol. 13880, pp. 3\u201319. Springer, Cham (2023). https:\/\/doi.org\/10.1007\/978-3-031-24841-2_1. ISBN 978-3-031-24841-2","DOI":"10.1007\/978-3-031-24841-2_1"},{"key":"3_CR18","doi-asserted-by":"publisher","unstructured":"Mehner, S., et al.: Parametricity and proving free theorems for functional- logic languages. In: Proceedings of the 16th International Symposium on Principles and Practice of Declarative Programming, PPDP 2014, pp. 19\u201330. Association for Computing Machinery, Canterbury (2014). https:\/\/doi.org\/10.1145\/2643135.2643147. ISBN 9781450329477","DOI":"10.1145\/2643135.2643147"},{"issue":"9","key":"3_CR19","doi-asserted-by":"publisher","first-page":"327","DOI":"10.1145\/1291220.1291200","volume":"42","author":"S Peyton Jones","year":"2007","unstructured":"Peyton Jones, S.: Call-pattern specialisation for Haskell programs. SIGPLAN Not. 42(9), 327\u2013337 (2007). https:\/\/doi.org\/10.1145\/1291220.1291200. ISSN 0362-1340","journal-title":"SIGPLAN Not."},{"key":"3_CR20","unstructured":"Reynols, J.C.: Types, abstraction and parametric polymorphism. In: Mason, R.E.A. (ed.) Information Processing 1983. IFIP Congress Series, vol. 9, pp. 513\u2013523. Elsevier Science Publishers B.V., Amsterdam (1983)"},{"key":"3_CR21","doi-asserted-by":"publisher","unstructured":"Voigtl\u00e4nder, J.: Free theorems simply, via dinaturality. In: Hofstedt, P., Abreu, S., John, U., Kuchen, H., Seipel, D. (eds.) INAP\/WLP\/WFLP -2019. LNCS (LNAI), vol. 12057, pp. 247\u2013267. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-46714-2_16. ISBN 978-3-030-46713-5","DOI":"10.1007\/978-3-030-46714-2_16"},{"key":"3_CR22","doi-asserted-by":"crossref","unstructured":"Wadler, P.: Deforestation: transforming programs to eliminate trees. Theor. Comput. Sci. 73(2), 231\u2013248 (1990). http:\/\/www.sciencedirect.com\/science\/article\/pii\/030439759090147A. ISSN 0304-3975","DOI":"10.1016\/0304-3975(90)90147-A"},{"key":"3_CR23","doi-asserted-by":"publisher","unstructured":"Wadler, P.: Theorems for free!. In: Proceedings of the Fourth International Conference on Functional Programming Languages and Computer Architecture, FPCA 1989, pp. 347\u2013359. Association for Computing Machinery, Imperial College (1989). https:\/\/doi.org\/10.1145\/99370.99404. ISBN 0897913280","DOI":"10.1145\/99370.99404"}],"container-title":["Lecture Notes in Computer Science","Practical Aspects of Declarative Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-84924-4_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,17]],"date-time":"2025-03-17T12:01:19Z","timestamp":1742212879000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-84924-4_3"}},"subtitle":["An Exercise in Applying Parametricity in Curry"],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9783031849237","9783031849244"],"references-count":23,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-84924-4_3","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"18 March 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"PADL","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Practical Aspects of Declarative Languages","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Denver, CO","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"USA","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2025","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"20 January 2025","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26 January 2025","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"27","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"padl2025","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}