{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:36:04Z","timestamp":1750221364935,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":18,"publisher":"ACM","license":[{"start":{"date-parts":[[2018,2,24]],"date-time":"2018-02-24T00:00:00Z","timestamp":1519430400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2018,2,24]]},"DOI":"10.1145\/3178372.3179499","type":"proceedings-article","created":{"date-parts":[[2018,2,21]],"date-time":"2018-02-21T16:46:16Z","timestamp":1519231576000},"page":"139-150","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":2,"title":["Tail call elimination and data representation for functional languages on the Java virtual machine"],"prefix":"10.1145","author":[{"given":"Magnus","family":"Madsen","sequence":"first","affiliation":[{"name":"Aalborg University, Denmark"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Ramin","family":"Zarifi","sequence":"additional","affiliation":[{"name":"University of Waterloo, Canada"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Ond\u0159ej","family":"Lhot\u00e1k","sequence":"additional","affiliation":[{"name":"University of Waterloo, Canada"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2018,2,24]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","unstructured":"Nick Benton Andrew Kennedy and George Russell. 1998. Compiling Standard ML to Java Bytecodes. In ICFP. 10.1145\/289423.289435","DOI":"10.1145\/289423.289435"},{"key":"e_1_3_2_1_2_1","unstructured":"Runar Oli Bjarnason. 2012. Stackless Scala With Free Monads."},{"key":"e_1_3_2_1_3_1","volume-title":"Kawa: Compiling Scheme to Java.","author":"Bothner Per","year":"1998","unstructured":"Per Bothner. 1998. Kawa: Compiling Scheme to Java."},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","unstructured":"Paul Chiusano and R\u00fanar Bjarnason. Functional Programming in Scala.","DOI":"10.5555\/2688794"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","unstructured":"Xavier Clerc. 2012. OCaml-Java: OCaml on the JVM. In TFP. 10.1007\/978-3-642-40447-4_11","DOI":"10.1007\/978-3-642-40447-4_11"},{"key":"e_1_3_2_1_6_1","volume-title":"WAMCC: Compiling Prolog to C. In ICLP.","author":"Codognet Philippe","year":"1995","unstructured":"Philippe Codognet, Daniel Diaz, et al. 1995. WAMCC: Compiling Prolog to C. In ICLP."},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","unstructured":"Simon Peyton Jones and David Lester. Implementing Functional Languages.","DOI":"10.5555\/129390"},{"key":"e_1_3_2_1_8_1","unstructured":"Kenneth MacKenzie and Nicholas Wolverson. 2003. Camelot and Grail: Resource-aware Functional Programming for the JVM. In TFP."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","unstructured":"Magnus Madsen Ming-Ho Yee and Ond\u0159ej Lhot\u00e1k. 2016a. From Datalog to Flix: A Declarative Language for Fixed Points on Lattices. In PLDI. 10.1145\/2908080.2908096","DOI":"10.1145\/2908080.2908096"},{"key":"e_1_3_2_1_10_1","unstructured":"Magnus Madsen Ming-Ho Yee and Ondrej Lhot\u00e1k. 2016b. Programming a Dataflow Analysis in Flix. In TAPAS."},{"key":"e_1_3_2_1_11_1","volume-title":"Improved Compilation of Prolog to C using Moded Types and Determinism Information. PADL","author":"Morales J","year":"2004","unstructured":"J Morales, Manuel Carro, and Manuel Hermenegildo. 2004. Improved Compilation of Prolog to C using Moded Types and Determinism Information. PADL (2004)."},{"key":"e_1_3_2_1_12_1","volume-title":"Lightweight compilation of (C)LP to JavaScript. ICLP","author":"Morales Jose F","year":"2012","unstructured":"Jose F Morales, R\u00e9my Haemmerl\u00e9, Manuel Carro, and Manuel V Hermenegildo. 2012. Lightweight compilation of (C)LP to JavaScript. ICLP (2012)."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","unstructured":"Peter Ross David Overton and Zoltan Somogyi. 1999. Making Mercury Programs Tail Recursive. In LOPSTR.","DOI":"10.5555\/646918.709141"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"crossref","unstructured":"Michel Schinz and Martin Odersky. 2001. Tail Call Elimination on the Java Virtual Machine. In BABEL.","DOI":"10.1016\/S1571-0661(05)80459-1"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","unstructured":"Lukas Stadler Christian Wimmer Thomas W\u00fcrthinger Hanspeter M\u00f6ssenb\u00f6ck and John Rose. 2009. Lazy Continuations for Java Virtual Machines. In PPPJ. 10.1145\/1596655.1596679","DOI":"10.1145\/1596655.1596679"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"crossref","unstructured":"Tom\u00e1\u0161 Tauber Xuan Bi Zhiyuan Shi Weixin Zhang Huang Li Zhenrui Zhang and Bruno Oliveira. 2015. Memory-Efficient Tail Calls in the JVM with Imperative Functional Objects. In APLAS.","DOI":"10.1007\/978-3-319-26529-2_2"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","unstructured":"Dean Wampler and Alex Payne. Programming Scala: Scalability = Functional Programming + Objects.","DOI":"10.5555\/1734084"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384716.2384723"}],"event":{"name":"CGO '18: 16th Annual IEEE\/ACM International Symposium on Code Generation and Optimization","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGMICRO ACM Special Interest Group on Microarchitectural Research and Processing","IEEE-CS Computer Society"],"location":"Vienna Austria","acronym":"CGO '18"},"container-title":["Proceedings of the 27th International Conference on Compiler Construction"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3178372.3179499","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3178372.3179499","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T02:26:23Z","timestamp":1750213583000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3178372.3179499"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,2,24]]},"references-count":18,"alternative-id":["10.1145\/3178372.3179499","10.1145\/3178372"],"URL":"https:\/\/doi.org\/10.1145\/3178372.3179499","relation":{},"subject":[],"published":{"date-parts":[[2018,2,24]]},"assertion":[{"value":"2018-02-24","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}