{"id":"https://openalex.org/W2898295052","doi":"https://doi.org/10.1145/3281287.3281294","title":"Building JIT compilers for dynamic languages with low development effort","display_name":"Building JIT compilers for dynamic languages with low development effort","publication_year":2018,"publication_date":"2018-10-24","ids":{"openalex":"https://openalex.org/W2898295052","doi":"https://doi.org/10.1145/3281287.3281294","mag":"2898295052"},"language":"en","primary_location":{"id":"doi:10.1145/3281287.3281294","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3281287.3281294","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 10th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5022260150","display_name":"Baptiste Saleil","orcid":null},"institutions":[{"id":"https://openalex.org/I70931966","display_name":"Universit\u00e9 de Montr\u00e9al","ror":"https://ror.org/0161xgx34","country_code":"CA","type":"education","lineage":["https://openalex.org/I70931966"]}],"countries":["CA"],"is_corresponding":true,"raw_author_name":"Baptiste Saleil","raw_affiliation_strings":["Universit\u00e9 de Montr\u00e9al, Canada"],"affiliations":[{"raw_affiliation_string":"Universit\u00e9 de Montr\u00e9al, Canada","institution_ids":["https://openalex.org/I70931966"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5032970376","display_name":"Marc Feeley","orcid":"https://orcid.org/0009-0005-5237-8712"},"institutions":[{"id":"https://openalex.org/I70931966","display_name":"Universit\u00e9 de Montr\u00e9al","ror":"https://ror.org/0161xgx34","country_code":"CA","type":"education","lineage":["https://openalex.org/I70931966"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Marc Feeley","raw_affiliation_strings":["Universit\u00e9 de Montr\u00e9al, Canada"],"affiliations":[{"raw_affiliation_string":"Universit\u00e9 de Montr\u00e9al, Canada","institution_ids":["https://openalex.org/I70931966"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5022260150"],"corresponding_institution_ids":["https://openalex.org/I70931966"],"apc_list":null,"apc_paid":null,"fwci":0.1629,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.59712029,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":"200","issue":null,"first_page":"36","last_page":"46"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9912999868392944,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8766101598739624},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7790740728378296},{"id":"https://openalex.org/keywords/just-in-time-compilation","display_name":"Just-in-time compilation","score":0.7225967645645142},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6769670248031616},{"id":"https://openalex.org/keywords/intermediate-language","display_name":"Intermediate language","score":0.6217030882835388},{"id":"https://openalex.org/keywords/machine-code","display_name":"Machine code","score":0.5999862551689148},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.5848314166069031},{"id":"https://openalex.org/keywords/scheme","display_name":"Scheme (mathematics)","score":0.5608698129653931},{"id":"https://openalex.org/keywords/interpreter","display_name":"Interpreter","score":0.5459262132644653},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.5437955856323242},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5358314514160156},{"id":"https://openalex.org/keywords/compiled-language","display_name":"Compiled language","score":0.5027580261230469},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.49153169989585876},{"id":"https://openalex.org/keywords/virtual-machine","display_name":"Virtual machine","score":0.4769393801689148},{"id":"https://openalex.org/keywords/syntax","display_name":"Syntax","score":0.4692502021789551},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.37327682971954346},{"id":"https://openalex.org/keywords/high-level-programming-language","display_name":"High-level programming language","score":0.29688096046447754},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.22600427269935608},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.1868659257888794},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.0947665274143219},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.07936474680900574},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.07688874006271362}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8766101598739624},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7790740728378296},{"id":"https://openalex.org/C76782552","wikidata":"https://www.wikidata.org/wiki/Q110546","display_name":"Just-in-time compilation","level":3,"score":0.7225967645645142},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6769670248031616},{"id":"https://openalex.org/C77660490","wikidata":"https://www.wikidata.org/wiki/Q244916","display_name":"Intermediate language","level":3,"score":0.6217030882835388},{"id":"https://openalex.org/C115168132","wikidata":"https://www.wikidata.org/wiki/Q55813","display_name":"Machine code","level":3,"score":0.5999862551689148},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.5848314166069031},{"id":"https://openalex.org/C77618280","wikidata":"https://www.wikidata.org/wiki/Q1155772","display_name":"Scheme (mathematics)","level":2,"score":0.5608698129653931},{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.5459262132644653},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.5437955856323242},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5358314514160156},{"id":"https://openalex.org/C92966194","wikidata":"https://www.wikidata.org/wiki/Q651794","display_name":"Compiled language","level":4,"score":0.5027580261230469},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.49153169989585876},{"id":"https://openalex.org/C25344961","wikidata":"https://www.wikidata.org/wiki/Q192726","display_name":"Virtual machine","level":2,"score":0.4769393801689148},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.4692502021789551},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.37327682971954346},{"id":"https://openalex.org/C19024347","wikidata":"https://www.wikidata.org/wiki/Q211496","display_name":"High-level programming language","level":3,"score":0.29688096046447754},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.22600427269935608},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.1868659257888794},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.0947665274143219},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.07936474680900574},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.07688874006271362},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3281287.3281294","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3281287.3281294","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 10th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/9","display_name":"Industry, innovation and infrastructure","score":0.5099999904632568}],"awards":[{"id":"https://openalex.org/G2789896763","display_name":null,"funder_award_id":"RGPIN/05682-2016","funder_id":"https://openalex.org/F4320334593","funder_display_name":"Natural Sciences and Engineering Research Council of Canada"}],"funders":[{"id":"https://openalex.org/F4320334593","display_name":"Natural Sciences and Engineering Research Council of Canada","ror":"https://ror.org/01h531d29"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":19,"referenced_works":["https://openalex.org/W1514258760","https://openalex.org/W1543830735","https://openalex.org/W1668251704","https://openalex.org/W1993335798","https://openalex.org/W2036830099","https://openalex.org/W2058213389","https://openalex.org/W2086833941","https://openalex.org/W2091228796","https://openalex.org/W2097013380","https://openalex.org/W2116136092","https://openalex.org/W2140191557","https://openalex.org/W2207050309","https://openalex.org/W2556053796","https://openalex.org/W2734180996","https://openalex.org/W2963080927","https://openalex.org/W2964084063","https://openalex.org/W3145454088","https://openalex.org/W4233193277","https://openalex.org/W4234825413"],"related_works":["https://openalex.org/W3045798957","https://openalex.org/W3011728381","https://openalex.org/W3195022246","https://openalex.org/W2491010355","https://openalex.org/W1606045022","https://openalex.org/W4245640102","https://openalex.org/W2553746381","https://openalex.org/W1975346949","https://openalex.org/W3033264920","https://openalex.org/W1523716807"],"abstract_inverted_index":{"Building":[0],"high":[1],"performance":[2,100],"virtual":[3,47],"machines":[4,48],"for":[5,49,95],"dynamic":[6,50],"languages":[7,51],"usually":[8],"requires":[9],"significant":[10],"development":[11,55],"effort.":[12],"They":[13],"may":[14,31],"require":[15,32],"an":[16],"interpreter":[17],"and":[18,57,79],"one":[19],"or":[20],"more":[21],"compilation":[22],"phases":[23],"to":[24,45,70,90],"generate":[25],"efficient":[26],"code.":[27],"In":[28],"addition,":[29],"they":[30],"several":[33],"static":[34],"analyses":[35],"using":[36,81],"custom":[37],"intermediate":[38,83],"representation(s).":[39],"This":[40],"paper":[41],"presents":[42],"techniques":[43,61,89],"used":[44,87],"implement":[46,91],"with":[52,106],"relatively":[53],"low":[54],"effort":[56],"good":[58],"performance.":[59],"These":[60],"allow":[62],"compiling":[63],"directly":[64],"from":[65],"the":[66,102,107],"abstract":[67],"syntax":[68],"tree":[69],"target":[71],"machine":[72],"code":[73,104,108],"while":[74],"still":[75],"enabling":[76],"useful":[77],"optimizations":[78],"without":[80],"any":[82],"representation.":[84],"We":[85,97],"have":[86],"these":[88],"a":[92],"JIT":[93],"compiler":[94],"Scheme.":[96],"show":[98],"that":[99],"of":[101],"generated":[103,109],"competes":[105],"by":[110],"mature":[111],"Scheme":[112],"implementations.":[113]},"counts_by_year":[{"year":2023,"cited_by_count":2},{"year":2021,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
