{"id":"https://openalex.org/W2979523740","doi":"https://doi.org/10.1145/3357765.3359514","title":"A stage-polymorphic IR for compiling MATLAB-style dynamic tensor expressions","display_name":"A stage-polymorphic IR for compiling MATLAB-style dynamic tensor expressions","publication_year":2019,"publication_date":"2019-10-10","ids":{"openalex":"https://openalex.org/W2979523740","doi":"https://doi.org/10.1145/3357765.3359514","mag":"2979523740"},"language":"en","primary_location":{"id":"doi:10.1145/3357765.3359514","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3357765.3359514","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th 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/A5027784711","display_name":"Alen Stojanov","orcid":null},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":true,"raw_author_name":"Alen Stojanov","raw_affiliation_strings":["ETH Zurich, Switzerland"],"affiliations":[{"raw_affiliation_string":"ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5003153354","display_name":"Tiark Rompf","orcid":"https://orcid.org/0000-0002-2068-3238"},"institutions":[{"id":"https://openalex.org/I219193219","display_name":"Purdue University West Lafayette","ror":"https://ror.org/02dqehb95","country_code":"US","type":"education","lineage":["https://openalex.org/I219193219"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Tiark Rompf","raw_affiliation_strings":["Purdue University, USA"],"affiliations":[{"raw_affiliation_string":"Purdue University, USA","institution_ids":["https://openalex.org/I219193219"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5076407181","display_name":"Markus P\u00fcschel","orcid":"https://orcid.org/0000-0001-8834-8551"},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Markus P\u00fcschel","raw_affiliation_strings":["ETH Zurich, Switzerland"],"affiliations":[{"raw_affiliation_string":"ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5027784711"],"corresponding_institution_ids":["https://openalex.org/I35440088"],"apc_list":null,"apc_paid":null,"fwci":0.4815,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.61870597,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"34","last_page":"47"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"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"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9941999912261963,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9897000193595886,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8165793418884277},{"id":"https://openalex.org/keywords/matlab","display_name":"MATLAB","score":0.7336093783378601},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6976873278617859},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6936960816383362},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.6812083721160889},{"id":"https://openalex.org/keywords/inference","display_name":"Inference","score":0.5098980665206909},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4911899268627167},{"id":"https://openalex.org/keywords/tensor","display_name":"Tensor (intrinsic definition)","score":0.4856966435909271},{"id":"https://openalex.org/keywords/projection","display_name":"Projection (relational algebra)","score":0.44821470975875854},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4392760992050171},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.42571133375167847},{"id":"https://openalex.org/keywords/computational-science","display_name":"Computational science","score":0.38799238204956055},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.36232027411460876},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.28424838185310364},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.14096269011497498},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.10428285598754883},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.07249921560287476}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8165793418884277},{"id":"https://openalex.org/C2780365114","wikidata":"https://www.wikidata.org/wiki/Q169478","display_name":"MATLAB","level":2,"score":0.7336093783378601},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6976873278617859},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6936960816383362},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.6812083721160889},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.5098980665206909},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4911899268627167},{"id":"https://openalex.org/C155281189","wikidata":"https://www.wikidata.org/wiki/Q3518150","display_name":"Tensor (intrinsic definition)","level":2,"score":0.4856966435909271},{"id":"https://openalex.org/C57493831","wikidata":"https://www.wikidata.org/wiki/Q3134666","display_name":"Projection (relational algebra)","level":2,"score":0.44821470975875854},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4392760992050171},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.42571133375167847},{"id":"https://openalex.org/C459310","wikidata":"https://www.wikidata.org/wiki/Q117801","display_name":"Computational science","level":1,"score":0.38799238204956055},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.36232027411460876},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.28424838185310364},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.14096269011497498},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.10428285598754883},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.07249921560287476},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3357765.3359514","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3357765.3359514","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":38,"referenced_works":["https://openalex.org/W1480909796","https://openalex.org/W1516048618","https://openalex.org/W1553894716","https://openalex.org/W1568931959","https://openalex.org/W1755674822","https://openalex.org/W1952958979","https://openalex.org/W1998968952","https://openalex.org/W2004851214","https://openalex.org/W2018951244","https://openalex.org/W2022967662","https://openalex.org/W2025760423","https://openalex.org/W2048195846","https://openalex.org/W2059696856","https://openalex.org/W2070262175","https://openalex.org/W2094455839","https://openalex.org/W2102890180","https://openalex.org/W2103871060","https://openalex.org/W2110423393","https://openalex.org/W2112928979","https://openalex.org/W2119112887","https://openalex.org/W2122878128","https://openalex.org/W2133646444","https://openalex.org/W2139690029","https://openalex.org/W2143609451","https://openalex.org/W2144585455","https://openalex.org/W2152885483","https://openalex.org/W2154697693","https://openalex.org/W2160183719","https://openalex.org/W2164056230","https://openalex.org/W2412474092","https://openalex.org/W2487295461","https://openalex.org/W2541001226","https://openalex.org/W2572804059","https://openalex.org/W2580807804","https://openalex.org/W2791759077","https://openalex.org/W4232437980","https://openalex.org/W4236561491","https://openalex.org/W4249124297"],"related_works":["https://openalex.org/W4240253816","https://openalex.org/W3096456556","https://openalex.org/W650988184","https://openalex.org/W2162410319","https://openalex.org/W2137356287","https://openalex.org/W4321184925","https://openalex.org/W2255990315","https://openalex.org/W60915090","https://openalex.org/W2025840053","https://openalex.org/W2161692994"],"abstract_inverted_index":{"We":[0,21],"propose":[1],"a":[2,26,39],"novel":[3],"approach":[4],"for":[5,25],"compiling":[6],"MATLAB":[7,29],"and":[8,19,68],"similar":[9],"languages":[10],"that":[11,41],"are":[12],"characterized":[13],"by":[14],"tensors":[15],"with":[16],"dynamic":[17],"shapes":[18],"types.":[20],"stage":[22,63],"an":[23],"evaluator":[24],"subset":[27],"of":[28],"using":[30],"the":[31,46,61],"Lightweight":[32],"Modular":[33],"Staging":[34],"(LMS)":[35],"framework":[36],"to":[37,54,59,71],"produce":[38],"compiler":[40],"generates":[42],"C":[43],"code.":[44],"But":[45],"first":[47],"Futamura":[48],"projection":[49],"alone":[50],"does":[51],"not":[52],"lead":[53],"efficient":[55],"code:":[56],"we":[57],"need":[58],"refine":[60],"rigid":[62],"distinction":[64],"based":[65],"on":[66],"type":[67],"shape":[69],"inference":[70],"remove":[72],"costly":[73],"runtime":[74],"checks.":[75]},"counts_by_year":[{"year":2024,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
