{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,30]],"date-time":"2026-06-30T03:28:11Z","timestamp":1782790091096,"version":"3.54.5"},"reference-count":28,"publisher":"IEEE","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015,2]]},"DOI":"10.1109\/cgo.2015.7054200","type":"proceedings-article","created":{"date-parts":[[2015,3,10]],"date-time":"2015-03-10T21:47:12Z","timestamp":1426024032000},"page":"202-212","source":"Crossref","is-referenced-by-count":14,"title":["A graph-based higher-order intermediate representation"],"prefix":"10.1109","author":[{"given":"Roland","family":"Leisa","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Marcel","family":"Koster","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Sebastian","family":"Hack","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"263","reference":[{"key":"ref10","author":"santos","year":"1995","journal-title":"Compilation by Transformation in Non-Strict Functional Languages"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1145\/155090.155113"},{"key":"ref12","doi-asserted-by":"publisher","DOI":"10.1109\/HPCC.2010.24"},{"key":"ref13","author":"halstead","year":"1977","journal-title":"Elements of Software Science (Operating and Programming Systems Series)"},{"key":"ref14","author":"hansen","year":"1999","journal-title":"Introduction to Programming using SML"},{"key":"ref15","doi-asserted-by":"crossref","DOI":"10.1007\/3-540-15975-4_37","article-title":"Lambda lifting: Transforming programs to recursive equations","author":"johnsson","year":"1985","journal-title":"Functional Programming Languages and Computer Architecture"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1145\/202530.202532"},{"key":"ref17","doi-asserted-by":"publisher","DOI":"10.1145\/1291151.1291179"},{"key":"ref18","doi-asserted-by":"publisher","DOI":"10.1142\/S0129626414410035"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1145\/2187671.2187672"},{"key":"ref28","article-title":"Fundamental concepts in programming languages","author":"strachey","year":"2000","journal-title":"Higher-Order and Symbolic Computation"},{"key":"ref4","author":"barendregt","year":"1985","journal-title":"The Lambda Calculus Its Syntax and Semantics"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1145\/202529.202536"},{"key":"ref3","author":"appel","year":"2006","journal-title":"Compiling with Continuations (Corr Version)"},{"key":"ref6","article-title":"Simple and efficient construction of static single assignment form","author":"braun","year":"2013","journal-title":"CC"},{"key":"ref5","article-title":"Firm-a graph-based intermediate representation","author":"braun","year":"2011","journal-title":"Technical Report"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1145\/115372.115320"},{"key":"ref7","author":"click","year":"1995","journal-title":"Combining Analyses Combining Optimizations"},{"key":"ref2","doi-asserted-by":"crossref","DOI":"10.1145\/278283.278285","article-title":"SSA is functional programming","author":"appel","year":"1998","journal-title":"SIGPLAN Not"},{"key":"ref9","article-title":"Lambda-dropping: Transforming recursive equations into programs with block structure","author":"danvy","year":"2001","journal-title":"This is an extended version of Danvy's and Schultz&#x2019; original paper of the same title which appeared at PEPM&#x2019; 97"},{"key":"ref1","doi-asserted-by":"crossref","DOI":"10.1145\/12276.13333","article-title":"Orbit: an optimizing compiler for scheme","author":"adams","year":"1986","journal-title":"SIGPLAN '86 Symposium on Compiler Construction"},{"key":"ref20","doi-asserted-by":"crossref","DOI":"10.1145\/1111037.1111049","article-title":"Environment analysis via ?-CFA","author":"might","year":"2006","journal-title":"POPL"},{"key":"ref22","article-title":"The Java HotSpot&#x2122; server compiler","author":"paleczny","year":"0","journal-title":"JVM 2001"},{"key":"ref21","author":"moggi","year":"1991","journal-title":"Notions of Computation and Monads"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.1145\/73560.73562"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796802004331"},{"key":"ref26","article-title":"A compiler for scheme","author":"steele","year":"1978","journal-title":"Technical Report"},{"key":"ref25","author":"shivers","year":"1991","journal-title":"Control-Flow Analysis of Higher-Order Languages"}],"event":{"name":"2015 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)","location":"San Francisco, CA, USA","start":{"date-parts":[[2015,2,7]]},"end":{"date-parts":[[2015,2,11]]}},"container-title":["2015 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/7041249\/7054173\/07054200.pdf?arnumber=7054200","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,5,20]],"date-time":"2025-05-20T21:03:51Z","timestamp":1747775031000},"score":1,"resource":{"primary":{"URL":"http:\/\/ieeexplore.ieee.org\/document\/7054200\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,2]]},"references-count":28,"URL":"https:\/\/doi.org\/10.1109\/cgo.2015.7054200","relation":{},"subject":[],"published":{"date-parts":[[2015,2]]}}}