{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:46:47Z","timestamp":1772164007825,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":54,"publisher":"ACM","license":[{"start":{"date-parts":[[2015,10,21]],"date-time":"2015-10-21T00:00:00Z","timestamp":1445385600000},"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":[[2015,10,21]]},"DOI":"10.1145\/2816707.2816715","type":"proceedings-article","created":{"date-parts":[[2015,11,3]],"date-time":"2015-11-03T15:06:54Z","timestamp":1446563214000},"page":"91-103","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":5,"title":["Java-to-JavaScript translation via structured control flow reconstruction of compiler IR"],"prefix":"10.1145","author":[{"given":"David","family":"Leopoldseder","sequence":"first","affiliation":[{"name":"JKU Linz, Austria"}]},{"given":"Lukas","family":"Stadler","sequence":"additional","affiliation":[{"name":"Oracle Labs, Austria"}]},{"given":"Christian","family":"Wimmer","sequence":"additional","affiliation":[{"name":"Oracle Labs, USA"}]},{"given":"Hanspeter","family":"M\u00f6ssenb\u00f6ck","sequence":"additional","affiliation":[{"name":"JKU Linz, Austria"}]}],"member":"320","published-online":{"date-parts":[[2015,10,21]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"Small Web Format","year":"2015","unstructured":"Adobe. Small Web Format , 2015 . URL http:\/\/www.adobe. com\/devnet\/swf.html. Adobe. Small Web Format, 2015. URL http:\/\/www.adobe. com\/devnet\/swf.html."},{"key":"e_1_3_2_1_2_1","unstructured":"Adobe. ActionScript 2015. URL http:\/\/www.adobe.com\/ devnet\/actionscript\/documentation.html.  Adobe. ActionScript 2015. URL http:\/\/www.adobe.com\/ devnet\/actionscript\/documentation.html."},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/197405.197406"},{"key":"e_1_3_2_1_4_1","volume-title":"Box2D Physics Engine","year":"2015","unstructured":"Box2d. Box2D Physics Engine , 2015 . URL http:\/\/box2d.org\/. Box2d. Box2D Physics Engine, 2015. URL http:\/\/box2d.org\/."},{"key":"e_1_3_2_1_6_1","unstructured":"CLBG. Computer Language Benchmark Game 2015. URL http:\/\/benchmarksgame.alioth.debian.org\/.  CLBG. Computer Language Benchmark Game 2015. URL http:\/\/benchmarksgame.alioth.debian.org\/."},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/207110.207154"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/115372.115320"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"crossref","unstructured":"DOI\n  : 10.1145\/115372.115320.    10.1145\/115372.115320\nDOI: 10.1145\/115372.115320.","DOI":"10.1145\/115372.115320"},{"key":"e_1_3_2_1_10_1","unstructured":"DB. DeltaBlue Benchmark 2015. URL https:\/\/github.com\/ xxgreg\/deltablue.  DB. DeltaBlue Benchmark 2015. URL https:\/\/github.com\/ xxgreg\/deltablue."},{"key":"e_1_3_2_1_11_1","volume-title":"Proceedings of the Asia-Pacific Programming Languages and Compilers Workshop. ACM Press","author":"Duboscq G.","year":"2013","unstructured":"G. Duboscq , L. Stadler , T. W\u00fcrthinger , D. Simon , C. Wimmer , and H. M\u00f6ssenb\u00f6ck . Graal IR: An extensible declarative intermediate representation . In Proceedings of the Asia-Pacific Programming Languages and Compilers Workshop. ACM Press , 2013 . G. Duboscq, L. Stadler, T. W\u00fcrthinger, D. Simon, C. Wimmer, and H. M\u00f6ssenb\u00f6ck. Graal IR: An extensible declarative intermediate representation. In Proceedings of the Asia-Pacific Programming Languages and Compilers Workshop. ACM Press, 2013."},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2542142.2542143"},{"key":"e_1_3_2_1_13_1","first-page":"240","volume-title":"In Proceedings of the International Conference on Computer Languages","author":"Erosa A.","unstructured":"A. Erosa and L. J. Hendren . Taming control flow: A structured approach to eliminating goto statements . In In Proceedings of the International Conference on Computer Languages , pages 229\u2013 240 . IEEE Computer Society Press, 1994. DOI: 10.1109\/ICCL.1994.288377. 10.1109\/ICCL.1994.288377 A. Erosa and L. J. Hendren. Taming control flow: A structured approach to eliminating goto statements. In In Proceedings of the International Conference on Computer Languages, pages 229\u2013240. IEEE Computer Society Press, 1994. DOI: 10.1109\/ICCL.1994.288377."},{"key":"e_1_3_2_1_14_1","volume-title":"Crankshaft: V8\u2019s optimizing compiler","year":"2012","unstructured":"Google. Crankshaft: V8\u2019s optimizing compiler , 2012 . URL http:\/\/blog.chromium.org\/2010\/12\/new-crankshaft-for-v8. html. Google. Crankshaft: V8\u2019s optimizing compiler, 2012. URL http:\/\/blog.chromium.org\/2010\/12\/new-crankshaft-for-v8. html."},{"key":"e_1_3_2_1_15_1","volume-title":"V8 JavaScript Engine","year":"2012","unstructured":"Google. V8 JavaScript Engine , 2012 . URL http:\/\/code.google. com\/p\/v8\/. Google. V8 JavaScript Engine, 2012. URL http:\/\/code.google. com\/p\/v8\/."},{"key":"e_1_3_2_1_16_1","unstructured":"Google. Closure Compiler 2015. URL https:\/\/developers. google.com\/closure\/compiler\/.  Google. Closure Compiler 2015. URL https:\/\/developers. google.com\/closure\/compiler\/."},{"key":"e_1_3_2_1_17_1","unstructured":"Google. Web Toolkit {GWT} 2015. URL http:\/\/www. gwtproject.org\/.  Google. Web Toolkit {GWT} 2015. URL http:\/\/www. gwtproject.org\/."},{"key":"e_1_3_2_1_18_1","volume-title":"DukeScript: Bck2Brwsr VM","author":"Tulach Jaroslav","year":"2015","unstructured":"Jaroslav Tulach . DukeScript: Bck2Brwsr VM , 2015 . URL http:\/\/wiki.apidesign.org\/wiki\/Bck2Brwsr. Jaroslav Tulach. DukeScript: Bck2Brwsr VM, 2015. URL http:\/\/wiki.apidesign.org\/wiki\/Bck2Brwsr."},{"key":"e_1_3_2_1_19_1","volume-title":"List of Languages that compile to JavaScript","year":"2015","unstructured":"jashkenas. List of Languages that compile to JavaScript , 2015 . URL https:\/\/github.com\/jashkenas\/coffeescript\/wiki\/ List-of-languages-that-compile-to-JS. jashkenas. List of Languages that compile to JavaScript, 2015. URL https:\/\/github.com\/jashkenas\/coffeescript\/wiki\/ List-of-languages-that-compile-to-JS."},{"key":"e_1_3_2_1_20_1","first-page":"x2d","year":"2015","unstructured":"JBox2D . Piston Bechnmark , 2015 . URL http:\/\/www.jbo x2d . org\/. JBox2D. Piston Bechnmark, 2015. URL http:\/\/www.jbox2d. org\/.","journal-title":"Piston Bechnmark"},{"key":"e_1_3_2_1_21_1","first-page":"3","article-title":"Obfuscating c++ programs via control flow flattening. Annales Universitatis Scientarum Budapestinensis de Rolando E\u00f6tv\u00f6s Nominatae","volume":"30","author":"L\u00e1szl\u00b4o T.","year":"2009","unstructured":"T. L\u00e1szl\u00b4o and \u00c1. Kiss . Obfuscating c++ programs via control flow flattening. Annales Universitatis Scientarum Budapestinensis de Rolando E\u00f6tv\u00f6s Nominatae , Sectio Computatorica , 30 : 3 \u2013 19 , 2009 . T. L\u00e1szl\u00b4o and \u00c1. Kiss. Obfuscating c++ programs via control flow flattening. Annales Universitatis Scientarum Budapestinensis de Rolando E\u00f6tv\u00f6s Nominatae, Sectio Computatorica, 30:3\u201319, 2009.","journal-title":"Sectio Computatorica"},{"key":"e_1_3_2_1_22_1","volume-title":"Java SE 8 Edition","author":"Lindholm T.","year":"2015","unstructured":"T. Lindholm , F. Yellin , G. Bracha , and A. Buckley . The Java Virtual Machine Specification , Java SE 8 Edition , 2015 . URL https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/jvms8.pdf. T. Lindholm, F. Yellin, G. Bracha, and A. Buckley. The Java Virtual Machine Specification, Java SE 8 Edition, 2015. URL https:\/\/docs.oracle.com\/javase\/specs\/jvms\/se8\/jvms8.pdf."},{"key":"e_1_3_2_1_23_1","unstructured":"Linpack. Linpack Benchmark 2015. URL http:\/\/www.netlib. org\/benchmark\/linpackjava\/.  Linpack. Linpack Benchmark 2015. URL http:\/\/www.netlib. org\/benchmark\/linpackjava\/."},{"key":"e_1_3_2_1_24_1","unstructured":"Lisperator. UglifyJs2 2015. URL http:\/\/lisperator.net\/ uglifyjs\/.  Lisperator. UglifyJs2 2015. URL http:\/\/lisperator.net\/ uglifyjs\/."},{"key":"e_1_3_2_1_25_1","unstructured":"LLVM. Clang 2015. URL http:\/\/clang.llvm.org\/.  LLVM. Clang 2015. URL http:\/\/clang.llvm.org\/."},{"key":"e_1_3_2_1_26_1","volume-title":"Low-Level Virtual Machine","author":"LLVM.","year":"2015","unstructured":"LLVM. Low-Level Virtual Machine , 2015 . URL http:\/\/llvm. org\/. LLVM. Low-Level Virtual Machine, 2015. URL http:\/\/llvm. org\/."},{"key":"e_1_3_2_1_27_1","first-page":"374","volume-title":"Reverse Engineering, 2001. Proceedings. Eighth Working Conference on","author":"Miecznikowski J.","unstructured":"J. Miecznikowski and L. Hendren . Decompiling java using staged encapsulation . In Reverse Engineering, 2001. Proceedings. Eighth Working Conference on , pages 368\u2013 374 . IEEE, 2001. DOI: 10.1109\/WCRE.2001.957845. 10.1109\/WCRE.2001.957845 J. Miecznikowski and L. Hendren. Decompiling java using staged encapsulation. In Reverse Engineering, 2001. Proceedings. Eighth Working Conference on, pages 368\u2013374. IEEE, 2001. DOI: 10.1109\/WCRE.2001.957845."},{"key":"e_1_3_2_1_28_1","first-page":"127","volume-title":"Compiler Construction","author":"Miecznikowski J.","unstructured":"J. Miecznikowski and L. Hendren . Decompiling java bytecode: Problems, traps and pitfalls . In Compiler Construction , volume 2304 , pages 111\u2013 127 . Springer Berlin Heidelberg, 2002. DOI: 10.1007\/3-540-45937-5\u02d910. 10.1007\/3-540-45937-5 J. Miecznikowski and L. Hendren. Decompiling java bytecode: Problems, traps and pitfalls. In Compiler Construction, volume 2304, pages 111\u2013127. Springer Berlin Heidelberg, 2002. DOI: 10.1007\/3-540-45937-5\u02d910."},{"key":"e_1_3_2_1_29_1","volume-title":"Springer","author":"Miecznikowski J.","year":"2002","unstructured":"J. Miecznikowski and L. Hendren . Decompiling java bytecode: Problems, traps and pitfalls. In Compiler construction, pages 111\u2013127 . Springer , 2002 . J. Miecznikowski and L. Hendren. Decompiling java bytecode: Problems, traps and pitfalls. In Compiler construction, pages 111\u2013127. Springer, 2002."},{"key":"e_1_3_2_1_30_1","unstructured":"Mozilla. ASM.js 2015. URL http:\/\/asmjs.org\/.  Mozilla. ASM.js 2015. URL http:\/\/asmjs.org\/."},{"key":"e_1_3_2_1_31_1","volume-title":"Developer Network (MDN): JavaScript","year":"2015","unstructured":"Mozilla. Developer Network (MDN): JavaScript , 2015 . URL https:\/\/developer.mozilla.org\/de\/docs\/Web\/JavaScript. Mozilla. Developer Network (MDN): JavaScript, 2015. URL https:\/\/developer.mozilla.org\/de\/docs\/Web\/JavaScript."},{"key":"e_1_3_2_1_32_1","unstructured":"Mozilla. Shumway 2015. URL http:\/\/mozilla.github.io\/ shumway\/.  Mozilla. Shumway 2015. URL http:\/\/mozilla.github.io\/ shumway\/."},{"key":"e_1_3_2_1_33_1","volume-title":"The OCaml Language","year":"2015","unstructured":"OCaml. The OCaml Language , 2015 . URL https:\/\/ocaml.org\/. OCaml. The OCaml Language, 2015. URL https:\/\/ocaml.org\/."},{"key":"e_1_3_2_1_34_1","unstructured":"OpenJDK. Graal 2015. URL http:\/\/openjdk.java.net\/projects\/ graal\/.  OpenJDK. Graal 2015. URL http:\/\/openjdk.java.net\/projects\/ graal\/."},{"key":"e_1_3_2_1_35_1","first-page":"12","volume-title":"Proceedings of the Symposium on Java Virtual Machine Research and Technology","author":"Paleczny M.","year":"2001","unstructured":"M. Paleczny , C. Vick , and C. Click . The Java HotSpot TM Server compiler . In Proceedings of the Symposium on Java Virtual Machine Research and Technology , pages 1\u2013 12 , 2001 . M. Paleczny, C. Vick, and C. Click. The Java HotSpot TM Server compiler. In Proceedings of the Symposium on Java Virtual Machine Research and Technology, pages 1\u201312, 2001."},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500828.2500831"},{"key":"e_1_3_2_1_37_1","volume-title":"The Racket Language","year":"2015","unstructured":"Racket. The Racket Language , 2015 . URL http:\/\/racket-lang. org\/. Racket. The Racket Language, 2015. URL http:\/\/racket-lang. org\/."},{"key":"e_1_3_2_1_38_1","unstructured":"SCI2. SciMark 2 Benchmark 2015. URL http:\/\/math.nist. gov\/scimark2\/.  SCI2. SciMark 2 Benchmark 2015. URL http:\/\/math.nist. gov\/scimark2\/."},{"key":"e_1_3_2_1_39_1","volume-title":"SPECjbb2005 Java Server Benchmark","year":"2015","unstructured":"Spec. SPECjbb2005 Java Server Benchmark , 2015 . URL https:\/\/www.spec.org\/jbb2005\/. Spec. SPECjbb2005 Java Server Benchmark, 2015. URL https:\/\/www.spec.org\/jbb2005\/."},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/2489837.2489846"},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/2544137.2544157"},{"key":"e_1_3_2_1_42_1","unstructured":"TEA. TEA VM 2015. URL http:\/\/teavm.org\/.  TEA. TEA VM 2015. URL http:\/\/teavm.org\/."},{"key":"e_1_3_2_1_43_1","first-page":"13","volume-title":"Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research","author":"Vall\u00e9e-Rai R.","unstructured":"R. Vall\u00e9e-Rai , P. Co , E. Gagnon , L. Hendren , P. Lam , and V. Sundaresan . Soot-a java bytecode optimization framework . In Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research , page 13 . IBM Press, 1999. R. Vall\u00e9e-Rai, P. Co, E. Gagnon, L. Hendren, P. Lam, and V. Sundaresan. Soot-a java bytecode optimization framework. In Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research, page 13. IBM Press, 1999."},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594293"},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"crossref","unstructured":"DOI\n  : 10.1145\/2594291.2594293.    10.1145\/2594291.2594293\nDOI: 10.1145\/2594291.2594293.","DOI":"10.1145\/2594291.2594293"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.2187"},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.5555\/900898"},{"key":"e_1_3_2_1_48_1","volume-title":"Hacker\u2019s delight","author":"Warren H. S.","year":"2013","unstructured":"H. S. Warren . Hacker\u2019s delight . Addison-Wesley , Upper Saddle River, NJ, 2 nd ed. edition, 2013 . ISBN 0321842685. H. S. Warren. Hacker\u2019s delight. Addison-Wesley, Upper Saddle River, NJ, 2nd ed. edition, 2013. ISBN 0321842685.","edition":"2"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2009.01.002"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"crossref","unstructured":"DOI\n  : 10.1016\/j.scico.2009.01.002.    10.1016\/j.scico.2009.01.002\nDOI: 10.1016\/j.scico.2009.01.002.","DOI":"10.1088\/1475-7516\/2009\/01\/002"},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384577.2384587"},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/2509578.2509581"},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/2508168.2508172"},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/2048147.2048224"},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"crossref","unstructured":"DOI\n  : 10.1145\/2048147.2048224.    10.1145\/2048147.2048224\nDOI: 10.1145\/2048147.2048224.","DOI":"10.1145\/2048147.2048224"}],"event":{"name":"SPLASH '15: Conference on Systems, Programming, Languages, and Applications: Software for Humanity","location":"Pittsburgh PA USA","acronym":"SPLASH '15","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 11th Symposium on Dynamic Languages"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2816707.2816715","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2816707.2816715","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T01:48:18Z","timestamp":1750211298000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2816707.2816715"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,10,21]]},"references-count":54,"alternative-id":["10.1145\/2816707.2816715","10.1145\/2816707"],"URL":"https:\/\/doi.org\/10.1145\/2816707.2816715","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/2936313.2816715","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2015,10,21]]},"assertion":[{"value":"2015-10-21","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}