{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:31:06Z","timestamp":1750221066763,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":21,"publisher":"ACM","license":[{"start":{"date-parts":[[2018,11,4]],"date-time":"2018-11-04T00:00:00Z","timestamp":1541289600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100000038","name":"Natural Sciences and Engineering Research Council of Canada","doi-asserted-by":"publisher","award":["RGPIN\/05682-2016"],"award-info":[{"award-number":["RGPIN\/05682-2016"]}],"id":[{"id":"10.13039\/501100000038","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2018,11,4]]},"DOI":"10.1145\/3281287.3281294","type":"proceedings-article","created":{"date-parts":[[2018,10,24]],"date-time":"2018-10-24T15:28:39Z","timestamp":1540394919000},"page":"36-46","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":2,"title":["Building JIT compilers for dynamic languages with low development effort"],"prefix":"10.1145","author":[{"given":"Baptiste","family":"Saleil","sequence":"first","affiliation":[{"name":"Universit\u00e9 de Montr\u00e9al, Canada"}]},{"given":"Marc","family":"Feeley","sequence":"additional","affiliation":[{"name":"Universit\u00e9 de Montr\u00e9al, Canada"}]}],"member":"320","published-online":{"date-parts":[[2018,11,4]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2784731.2784740"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1565824.1565827"},{"key":"e_1_3_2_1_3_1","volume-title":"3rd Workshop on Dynamic Languages and Applications.","author":"Bolz Carl Friedrich","year":"2007","unstructured":"Carl Friedrich Bolz and Armin Rigo . 2007 . How to Not Write Virtual Machines for Dynamic Languages . In 3rd Workshop on Dynamic Languages and Applications. Carl Friedrich Bolz and Armin Rigo. 2007. How to Not Write Virtual Machines for Dynamic Languages. In 3rd Workshop on Dynamic Languages and Applications."},{"key":"e_1_3_2_1_5_1","volume-title":"29th European Conference on Object-Oriented Programming, ECOOP","author":"Chevalier-Boisvert Maxime","year":"2015","unstructured":"Maxime Chevalier-Boisvert and Marc Feeley . 2015 . Simple and Effective Type Check Removal through Lazy Basic Block Versioning . In 29th European Conference on Object-Oriented Programming, ECOOP 2015. Maxime Chevalier-Boisvert and Marc Feeley. 2015. Simple and Effective Type Check Removal through Lazy Basic Block Versioning. In 29th European Conference on Object-Oriented Programming, ECOOP 2015."},{"key":"e_1_3_2_1_6_1","volume-title":"Interprocedural Type Specialization of JavaScript Programs Without Type Analysis. In 30th European Conference on Object-Oriented Programming, ECOOP","author":"Chevalier-Boisvert Maxime","year":"2016","unstructured":"Maxime Chevalier-Boisvert and Marc Feeley . 2016 . Interprocedural Type Specialization of JavaScript Programs Without Type Analysis. In 30th European Conference on Object-Oriented Programming, ECOOP 2016. Maxime Chevalier-Boisvert and Marc Feeley. 2016. Interprocedural Type Specialization of JavaScript Programs Without Type Analysis. In 30th European Conference on Object-Oriented Programming, ECOOP 2016."},{"key":"e_1_3_2_1_7_1","unstructured":"Marc Feeley. 2018. Gambit Scheme Compiler v4.8.9. http:\/\/gambitscheme.org\/.  Marc Feeley. 2018. Gambit Scheme Compiler v4.8.9. http:\/\/gambitscheme.org\/."},{"key":"e_1_3_2_1_8_1","first-page":"754","volume":"200","author":"IEEE","year":"2008","unstructured":"IEEE Standard for Floating-Point Arithmetic. 200 8. IEEE Std 754 - 2008 ( 2008 ). IEEE Standard for Floating-Point Arithmetic. 2008. IEEE Std 754-2008 (2008).","journal-title":"Floating-Point Arithmetic."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542528"},{"key":"e_1_3_2_1_10_1","unstructured":"David Gudeman. 1993. Representing Type Information in Dynamically Typed Languages.  David Gudeman. 1993. Representing Type Information in Dynamically Typed Languages."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"crossref","unstructured":"Richard Jones Antony Hosking and Eliot Moss. 2011. The Garbage Collection Handbook: The Art of Automatic Memory Management.   Richard Jones Antony Hosking and Eliot Moss. 2011. The Garbage Collection Handbook: The Art of Automatic Memory Management .","DOI":"10.1201\/9781315388021"},{"key":"e_1_3_2_1_12_1","volume-title":"Revised Report on the Algorithmic Language Scheme. SIGPLAN Notices","author":"Kelsey Richard","year":"1998","unstructured":"Richard Kelsey , William D. Clinger , and Jonathan Rees . 1998. Revised Report on the Algorithmic Language Scheme. SIGPLAN Notices ( 1998 ). Richard Kelsey, William D. Clinger, and Jonathan Rees. 1998. Revised Report on the Algorithmic Language Scheme. SIGPLAN Notices (1998)."},{"key":"e_1_3_2_1_13_1","unstructured":"Tim Lindholm Frank Yellin Gilad Bracha Alex Buckley and Daniel Smith. 2018. The Java Virtual Machine Specification.  Tim Lindholm Frank Yellin Gilad Bracha Alex Buckley and Daniel Smith. 2018. The Java Virtual Machine Specification ."},{"key":"e_1_3_2_1_14_1","volume-title":"TOPLAS","author":"Poletto Massimiliano","year":"1999","unstructured":"Massimiliano Poletto and Vivek Sarkar . 1999. Linear Scan Register Allocation. ACM Transactions on Programming Languages and Systems , TOPLAS ( 1999 ). Massimiliano Poletto and Vivek Sarkar. 1999. Linear Scan Register Allocation. ACM Transactions on Programming Languages and Systems, TOPLAS (1999)."},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1014007.1014010"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176617.1176753"},{"key":"e_1_3_2_1_17_1","volume-title":"Code Versioning and Extremely Lazy Compilation of Scheme. In Scheme and Functional Programming Workshop, SFPW","author":"Saleil Baptiste","year":"2014","unstructured":"Baptiste Saleil and Marc Feeley . 2014 . Code Versioning and Extremely Lazy Compilation of Scheme. In Scheme and Functional Programming Workshop, SFPW 2014. Baptiste Saleil and Marc Feeley. 2014. Code Versioning and Extremely Lazy Compilation of Scheme. In Scheme and Functional Programming Workshop, SFPW 2014."},{"key":"e_1_3_2_1_18_1","volume-title":"Type Check Removal Using Lazy Interprocedural Code Versioning. In Scheme and Functional Programming Workshop, SFPW","author":"Saleil Baptiste","year":"2015","unstructured":"Baptiste Saleil and Marc Feeley . 2015 . Type Check Removal Using Lazy Interprocedural Code Versioning. In Scheme and Functional Programming Workshop, SFPW 2015. Baptiste Saleil and Marc Feeley. 2015. Type Check Removal Using Lazy Interprocedural Code Versioning. In Scheme and Functional Programming Workshop, SFPW 2015."},{"key":"e_1_3_2_1_19_1","volume-title":"Interprocedural Specialization of Higher-Order Dynamic Languages Without Static Analysis. In 31st European Conference on Object-Oriented Programming, ECOOP","author":"Saleil Baptiste","year":"2017","unstructured":"Baptiste Saleil and Marc Feeley . 2017 . Interprocedural Specialization of Higher-Order Dynamic Languages Without Static Analysis. In 31st European Conference on Object-Oriented Programming, ECOOP 2017. Baptiste Saleil and Marc Feeley. 2017. Interprocedural Specialization of Higher-Order Dynamic Languages Without Static Analysis. In 31st European Conference on Object-Oriented Programming, ECOOP 2017."},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/858570.858576"},{"key":"e_1_3_2_1_21_1","volume-title":"Truffle: A Self-Optimizing Runtime System. In Conference on Systems, Programming, and Applications: Software for Humanity, SPLASH","author":"Wimmer Christian","year":"2012","unstructured":"Christian Wimmer and Thomas W\u00fcrthinger . 2012 . Truffle: A Self-Optimizing Runtime System. In Conference on Systems, Programming, and Applications: Software for Humanity, SPLASH 2012. Christian Wimmer and Thomas W\u00fcrthinger. 2012. Truffle: A Self-Optimizing Runtime System. In Conference on Systems, Programming, and Applications: Software for Humanity, SPLASH 2012."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384577.2384587"}],"event":{"name":"SPLASH '18: Conference on Systems, Programming, Languages, and Applications: Software for Humanity","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"],"location":"Boston MA USA","acronym":"SPLASH '18"},"container-title":["Proceedings of the 10th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3281287.3281294","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3281287.3281294","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T00:57:17Z","timestamp":1750208237000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3281287.3281294"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,11,4]]},"references-count":21,"alternative-id":["10.1145\/3281287.3281294","10.1145\/3281287"],"URL":"https:\/\/doi.org\/10.1145\/3281287.3281294","relation":{},"subject":[],"published":{"date-parts":[[2018,11,4]]},"assertion":[{"value":"2018-11-04","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}