{"id":"https://openalex.org/W4404403133","doi":"https://doi.org/10.1145/3704840","title":"MimIR: An Extensible and Type-Safe Intermediate Representation for the DSL Age","display_name":"MimIR: An Extensible and Type-Safe Intermediate Representation for the DSL Age","publication_year":2025,"publication_date":"2025-01-07","ids":{"openalex":"https://openalex.org/W4404403133","doi":"https://doi.org/10.1145/3704840"},"language":"en","primary_location":{"id":"doi:10.1145/3704840","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3704840","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://doi.org/10.1145/3704840","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5002266283","display_name":"Roland Lei\u00dfa","orcid":"https://orcid.org/0000-0002-2444-6782"},"institutions":[{"id":"https://openalex.org/I177802217","display_name":"University of Mannheim","ror":"https://ror.org/031bsb921","country_code":"DE","type":"education","lineage":["https://openalex.org/I177802217"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Roland Lei\u00dfa","raw_affiliation_strings":["University of Mannheim, Mannheim, Germany"],"raw_orcid":"https://orcid.org/0000-0002-2444-6782","affiliations":[{"raw_affiliation_string":"University of Mannheim, Mannheim, Germany","institution_ids":["https://openalex.org/I177802217"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5051946329","display_name":"Marcel Ullrich","orcid":"https://orcid.org/0009-0006-0127-9623"},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Marcel Ullrich","raw_affiliation_strings":["Saarland University, Saarbr\u00fccken, Germany"],"raw_orcid":"https://orcid.org/0009-0006-0127-9623","affiliations":[{"raw_affiliation_string":"Saarland University, Saarbr\u00fccken, Germany","institution_ids":["https://openalex.org/I91712215"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5000242668","display_name":"Joachim Meyer","orcid":"https://orcid.org/0000-0003-2656-9863"},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Joachim Meyer","raw_affiliation_strings":["Saarland University, Saarbr\u00fccken, Germany"],"raw_orcid":"https://orcid.org/0000-0003-2656-9863","affiliations":[{"raw_affiliation_string":"Saarland University, Saarbr\u00fccken, Germany","institution_ids":["https://openalex.org/I91712215"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5018809145","display_name":"Sebastian Hack","orcid":"https://orcid.org/0000-0002-3387-2134"},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Sebastian Hack","raw_affiliation_strings":["Saarland University, Saarbr\u00fccken, Germany"],"raw_orcid":"https://orcid.org/0000-0002-3387-2134","affiliations":[{"raw_affiliation_string":"Saarland University, Saarbr\u00fccken, Germany","institution_ids":["https://openalex.org/I91712215"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.396,"has_fulltext":true,"cited_by_count":1,"citation_normalized_percentile":{"value":0.81878884,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":91,"max":95},"biblio":{"volume":"9","issue":"POPL","first_page":"95","last_page":"125"},"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.9995999932289124,"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.9995999932289124,"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/T10142","display_name":"Formal Methods in Verification","score":0.9983999729156494,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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.9901999831199646,"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.8224161863327026},{"id":"https://openalex.org/keywords/plug-in","display_name":"Plug-in","score":0.797000527381897},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7807018756866455},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6939294934272766},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.44038301706314087},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.43664035201072693},{"id":"https://openalex.org/keywords/digital-subscriber-line","display_name":"Digital subscriber line","score":0.41636136174201965},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.38629329204559326}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8224161863327026},{"id":"https://openalex.org/C4924752","wikidata":"https://www.wikidata.org/wiki/Q184148","display_name":"Plug-in","level":2,"score":0.797000527381897},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7807018756866455},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6939294934272766},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.44038301706314087},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.43664035201072693},{"id":"https://openalex.org/C201374245","wikidata":"https://www.wikidata.org/wiki/Q104534","display_name":"Digital subscriber line","level":2,"score":0.41636136174201965},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.38629329204559326},{"id":"https://openalex.org/C76155785","wikidata":"https://www.wikidata.org/wiki/Q418","display_name":"Telecommunications","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/3704840","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3704840","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:2411.07443","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2411.07443","pdf_url":"https://arxiv.org/pdf/2411.07443","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},{"id":"pmh:oai:ub-madoc.bib.uni-mannheim.de:68677","is_oa":true,"landing_page_url":null,"pdf_url":"https://madoc.bib.uni-mannheim.de/68677/1/3704840.pdf","source":{"id":"https://openalex.org/S4377196315","display_name":"MADOC (University of Mannheim)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I177802217","host_organization_name":"University of Mannheim","host_organization_lineage":["https://openalex.org/I177802217"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Zeitschriftenartikel"},{"id":"doi:10.22028/d291-47935","is_oa":true,"landing_page_url":"https://doi.org/10.22028/d291-47935","pdf_url":null,"source":{"id":"https://openalex.org/S7407052975","display_name":"Universit\u00e4t des Saarlandes","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"Collection"}],"best_oa_location":{"id":"doi:10.1145/3704840","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3704840","pdf_url":null,"source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/9","score":0.6299999952316284,"display_name":"Industry, innovation and infrastructure"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":53,"referenced_works":["https://openalex.org/W1536119593","https://openalex.org/W1557825595","https://openalex.org/W1580664042","https://openalex.org/W1595372275","https://openalex.org/W1607247974","https://openalex.org/W1964962870","https://openalex.org/W1965256357","https://openalex.org/W1981830935","https://openalex.org/W1986402635","https://openalex.org/W2007339694","https://openalex.org/W2073904768","https://openalex.org/W2082709037","https://openalex.org/W2097166325","https://openalex.org/W2100111786","https://openalex.org/W2101430044","https://openalex.org/W2110196404","https://openalex.org/W2118227920","https://openalex.org/W2140566629","https://openalex.org/W2149127686","https://openalex.org/W2149381887","https://openalex.org/W2152397470","https://openalex.org/W2160756430","https://openalex.org/W2163672025","https://openalex.org/W2211325406","https://openalex.org/W2267469130","https://openalex.org/W2289066165","https://openalex.org/W2402296188","https://openalex.org/W2562114628","https://openalex.org/W2594730095","https://openalex.org/W2751791540","https://openalex.org/W2793476006","https://openalex.org/W2799064532","https://openalex.org/W2799182172","https://openalex.org/W2898442528","https://openalex.org/W2912126004","https://openalex.org/W2960965208","https://openalex.org/W2964794147","https://openalex.org/W3042796137","https://openalex.org/W3122286897","https://openalex.org/W3133549410","https://openalex.org/W3184092516","https://openalex.org/W3197831489","https://openalex.org/W4220857596","https://openalex.org/W4231393247","https://openalex.org/W4246166885","https://openalex.org/W4252223645","https://openalex.org/W4253641208","https://openalex.org/W4280536779","https://openalex.org/W4293812515","https://openalex.org/W4321184895","https://openalex.org/W4388299483","https://openalex.org/W4396821177","https://openalex.org/W6967841013"],"related_works":["https://openalex.org/W4252501555","https://openalex.org/W2003848320","https://openalex.org/W2109776807","https://openalex.org/W2885657154","https://openalex.org/W4289709346","https://openalex.org/W2119542776","https://openalex.org/W2014596857","https://openalex.org/W2582410692","https://openalex.org/W2140083133","https://openalex.org/W1485300234"],"abstract_inverted_index":{"Traditional":[0],"compilers,":[1],"designed":[2],"for":[3,70,200],"optimizing":[4,164],"low-level":[5],"code,":[6],"fall":[7],"short":[8],"when":[9],"dealing":[10],"with":[11,129],"modern,":[12],"computation-heavy":[13],"applications":[14],"like":[15],"image":[16],"processing,":[17],"machine":[18],"learning,":[19],"or":[20,125,146],"numerical":[21],"simulations.":[22],"Optimizations":[23],"should":[24],"understand":[25],"the":[26,30,50,104,117,158,167,172,187],"primitive":[27],"operations":[28],"of":[29,96,106,119,163,176,190],"specific":[31],"application":[32],"domain":[33],"and":[34,53,61,149,160,165,174,198,203],"thus":[35],"happen":[36],"on":[37],"that":[38,184,208,216],"level.":[39],"Domain-specific":[40],"languages":[41],"(DSLs)":[42],"fulfill":[43],"these":[44],"requirements.":[45],"However,":[46],"DSL":[47,72],"compilers":[48],"reinvent":[49],"wheel":[51],"over":[52,54],"again":[55],"as":[56,192],"standard":[57],"optimizations,":[58],"code":[59,66,215],"generators,":[60],"general":[62],"infrastructure":[63],"&amp;":[64],"boilerplate":[65],"must":[67],"be":[68,116],"reimplemented":[69],"each":[71],"compiler.":[73],"This":[74,137],"paper":[75],"presents":[76],"MImIR,":[77],"an":[78],"extensible,":[79],"higher-order":[80],"intermediate":[81],"representation.":[82],"At":[83],"its":[84],"core,":[85],"MImIR":[86,142,177,213],"is":[87],"a":[88,94,97,120,122,130,153,194],"pure":[89],"type":[90,123],"system":[91],"and,":[92],"hence,":[93],"form":[95],"typed":[98],"lambda":[99],"calculus.":[100],"Developers":[101],"can":[102,115,140],"declare":[103],"signatures":[105],"new":[107],"(domain-specific)":[108],"operations,":[109],"called":[110],"axioms":[111],".":[112,155],"An":[113],"axiom":[114],"declaration":[118],"function,":[121],"constructor,":[124],"any":[126,144],"other":[127],"entity":[128],"possibly":[131],"polymorphic,":[132],"polytypic,":[133],"and/or":[134],"dependent":[135],"type.":[136],"way,":[138],"developers":[139],"extend":[141,157],"at":[143,186],"low":[145],"high":[147],"level":[148,189],"bundle":[150],"them":[151],"in":[152,178,209],"plugin":[154],"Plugins":[156],"compiler":[159],"take":[161],"care":[162],"lowering":[166],"plugins'":[168],"axioms.":[169],"We":[170,206],"show":[171,207],"expressiveness":[173],"effectiveness":[175],"three":[179,211],"case":[180],"studies:":[181],"Low-level":[182],"plugins":[183,199],"operate":[185],"same":[188],"abstraction":[191],"LLVM,":[193],"regular-expression":[195],"matching":[196],"plugin,":[197],"linear":[201],"algebra":[202],"automatic":[204],"differentiation.":[205],"all":[210],"studies,":[212],"produces":[214],"has":[217],"state-of-the-art":[218],"performance.":[219]},"counts_by_year":[{"year":2025,"cited_by_count":1}],"updated_date":"2026-07-13T07:31:44.756512","created_date":"2024-11-15T00:00:00"}
