{"id":"https://openalex.org/W4387793707","doi":"https://doi.org/10.1145/3624007.3624050","title":"Automatically Generated Supernodes for AST Interpreters Improve Virtual-Machine Performance","display_name":"Automatically Generated Supernodes for AST Interpreters Improve Virtual-Machine Performance","publication_year":2023,"publication_date":"2023-10-19","ids":{"openalex":"https://openalex.org/W4387793707","doi":"https://doi.org/10.1145/3624007.3624050"},"language":"en","primary_location":{"id":"doi:10.1145/3624007.3624050","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3624007.3624050","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 22nd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","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/A5056386658","display_name":"Matteo Basso","orcid":"https://orcid.org/0000-0002-7219-9077"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":true,"raw_author_name":"Matteo Basso","raw_affiliation_strings":["Universit\u00e0 della Svizzera italiana (USI), Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera italiana (USI), Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5025674223","display_name":"Daniele Bonetta","orcid":"https://orcid.org/0000-0001-7633-4224"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Daniele Bonetta","raw_affiliation_strings":["Oracle Labs, Amsterdam, Netherlands"],"affiliations":[{"raw_affiliation_string":"Oracle Labs, Amsterdam, Netherlands","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5074152163","display_name":"Walter Binder","orcid":"https://orcid.org/0000-0002-2477-2182"},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Walter Binder","raw_affiliation_strings":["Universit\u00e0 della Svizzera italiana (USI), Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera italiana (USI), Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5056386658"],"corresponding_institution_ids":["https://openalex.org/I57201433"],"apc_list":null,"apc_paid":null,"fwci":0.5245,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.71994332,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":96,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"13"},"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.9973999857902527,"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.9973999857902527,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9955000281333923,"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"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9954000115394592,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/interpreter","display_name":"Interpreter","score":0.877013623714447},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8542730808258057},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7747626304626465},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.588318943977356},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.5268208980560303},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.5136520266532898},{"id":"https://openalex.org/keywords/inheritance","display_name":"Inheritance (genetic algorithm)","score":0.4904751479625702},{"id":"https://openalex.org/keywords/virtual-machine","display_name":"Virtual machine","score":0.4573407471179962},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.4186713695526123},{"id":"https://openalex.org/keywords/compiled-language","display_name":"Compiled language","score":0.4139992594718933},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.219030499458313},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.1378004252910614},{"id":"https://openalex.org/keywords/high-level-programming-language","display_name":"High-level programming language","score":0.1259264051914215}],"concepts":[{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.877013623714447},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8542730808258057},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7747626304626465},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.588318943977356},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.5268208980560303},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.5136520266532898},{"id":"https://openalex.org/C2780902518","wikidata":"https://www.wikidata.org/wiki/Q6033780","display_name":"Inheritance (genetic algorithm)","level":3,"score":0.4904751479625702},{"id":"https://openalex.org/C25344961","wikidata":"https://www.wikidata.org/wiki/Q192726","display_name":"Virtual machine","level":2,"score":0.4573407471179962},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.4186713695526123},{"id":"https://openalex.org/C92966194","wikidata":"https://www.wikidata.org/wiki/Q651794","display_name":"Compiled language","level":4,"score":0.4139992594718933},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.219030499458313},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.1378004252910614},{"id":"https://openalex.org/C19024347","wikidata":"https://www.wikidata.org/wiki/Q211496","display_name":"High-level programming language","level":3,"score":0.1259264051914215},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3624007.3624050","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3624007.3624050","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 22nd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/1","score":0.44999998807907104,"display_name":"No poverty"}],"awards":[{"id":"https://openalex.org/G1763308570","display_name":null,"funder_award_id":"ERO project 1332","funder_id":"https://openalex.org/F4320307904","funder_display_name":"Oracle"},{"id":"https://openalex.org/G6418571462","display_name":null,"funder_award_id":"200020_188688","funder_id":"https://openalex.org/F4320320924","funder_display_name":"Schweizerischer Nationalfonds zur F\u00f6rderung der Wissenschaftlichen Forschung"}],"funders":[{"id":"https://openalex.org/F4320307904","display_name":"Oracle","ror":"https://ror.org/006c77m33"},{"id":"https://openalex.org/F4320320924","display_name":"Schweizerischer Nationalfonds zur F\u00f6rderung der Wissenschaftlichen Forschung","ror":"https://ror.org/00yjd3n13"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":14,"referenced_works":["https://openalex.org/W2033197452","https://openalex.org/W2062414112","https://openalex.org/W2069902027","https://openalex.org/W2086833941","https://openalex.org/W2094269821","https://openalex.org/W2160756430","https://openalex.org/W2895932027","https://openalex.org/W2979463730","https://openalex.org/W3004830048","https://openalex.org/W3092079212","https://openalex.org/W3138597379","https://openalex.org/W3195007140","https://openalex.org/W4239476173","https://openalex.org/W4240856603"],"related_works":["https://openalex.org/W1721418433","https://openalex.org/W2463512549","https://openalex.org/W3089412887","https://openalex.org/W2539394636","https://openalex.org/W2013844469","https://openalex.org/W2491010355","https://openalex.org/W2562027596","https://openalex.org/W2949130277","https://openalex.org/W2026489303","https://openalex.org/W3033264920"],"abstract_inverted_index":{"Abstract":[0],"syntax":[1],"tree":[2],"(AST)":[3],"interpreters":[4,15,34,66],"allow":[5],"implementing":[6],"programming":[7],"languages":[8],"in":[9,17,23,51,85],"a":[10],"straight-forward":[11],"way.":[12],"However,":[13],"AST":[14,37],"implemented":[16],"object-oriented":[18],"languages,":[19],"such":[20],"as":[21],"e.g.":[22],"Java,":[24],"often":[25],"suffer":[26],"from":[27],"two":[28],"serious":[29],"performance":[30,84],"issues.":[31],"First,":[32],"these":[33,65,82],"commonly":[35],"implement":[36],"nodes":[38],"by":[39],"leveraging":[40],"class":[41],"inheritance":[42],"and":[43,55],"polymorphism,":[44],"leading":[45],"to":[46,71],"many":[47],"polymorphic":[48],"call":[49],"sites":[50],"the":[52,73,86,90],"interpreter":[53,58],"implementation":[54],"hence":[56],"lowering":[57],"performance.":[59],"Second,":[60],"widely":[61],"used":[62],"implementations":[63],"of":[64,89],"throw":[67],"costly":[68],"runtime":[69],"exceptions":[70],"model":[72],"control":[74],"flow.":[75],"Even":[76],"though":[77],"Just-in-Time":[78],"(JIT)":[79],"compilation":[80],"mitigates":[81],"issues,":[83],"first":[87],"stages":[88],"program":[91],"execution":[92],"remains":[93],"poor.":[94]},"counts_by_year":[{"year":2025,"cited_by_count":3}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
