{"id":"https://openalex.org/W4386316895","doi":"https://doi.org/10.1145/3607833","title":"Flexible Instruction-Set Semantics via Abstract Monads (Experience Report)","display_name":"Flexible Instruction-Set Semantics via Abstract Monads (Experience Report)","publication_year":2023,"publication_date":"2023-08-30","ids":{"openalex":"https://openalex.org/W4386316895","doi":"https://doi.org/10.1145/3607833"},"language":"en","primary_location":{"id":"doi:10.1145/3607833","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3607833","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3607833","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":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3607833","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5031573662","display_name":"Thomas Bourgeat","orcid":"https://orcid.org/0000-0002-8468-8409"},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Thomas Bourgeat","raw_affiliation_strings":["Massachusetts Institute of Technology, USA"],"affiliations":[{"raw_affiliation_string":"Massachusetts Institute of Technology, USA","institution_ids":["https://openalex.org/I63966007"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5062087506","display_name":"Ian Clester","orcid":"https://orcid.org/0009-0006-2383-4739"},"institutions":[{"id":"https://openalex.org/I130701444","display_name":"Georgia Institute of Technology","ror":"https://ror.org/01zkghx44","country_code":"US","type":"education","lineage":["https://openalex.org/I130701444"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ian Clester","raw_affiliation_strings":["Georgia Institute of Technology, USA"],"affiliations":[{"raw_affiliation_string":"Georgia Institute of Technology, USA","institution_ids":["https://openalex.org/I130701444"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5082766906","display_name":"Andres Erbsen","orcid":"https://orcid.org/0000-0002-9854-7500"},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Andres Erbsen","raw_affiliation_strings":["Massachusetts Institute of Technology, USA"],"affiliations":[{"raw_affiliation_string":"Massachusetts Institute of Technology, USA","institution_ids":["https://openalex.org/I63966007"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5028002789","display_name":"Samuel Gruetter","orcid":"https://orcid.org/0000-0001-8369-9117"},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Samuel Gruetter","raw_affiliation_strings":["Massachusetts Institute of Technology, USA"],"affiliations":[{"raw_affiliation_string":"Massachusetts Institute of Technology, USA","institution_ids":["https://openalex.org/I63966007"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101572960","display_name":"Pratap Singh","orcid":"https://orcid.org/0000-0002-7139-2334"},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Pratap Singh","raw_affiliation_strings":["Carnegie Mellon University, USA"],"affiliations":[{"raw_affiliation_string":"Carnegie Mellon University, USA","institution_ids":["https://openalex.org/I74973139"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5062156434","display_name":"A. Wright","orcid":"https://orcid.org/0000-0002-0127-0331"},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Andy Wright","raw_affiliation_strings":["Massachusetts Institute of Technology, USA"],"affiliations":[{"raw_affiliation_string":"Massachusetts Institute of Technology, USA","institution_ids":["https://openalex.org/I63966007"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5078100439","display_name":"Adam Chlipala","orcid":"https://orcid.org/0000-0001-7085-9417"},"institutions":[{"id":"https://openalex.org/I63966007","display_name":"Massachusetts Institute of Technology","ror":"https://ror.org/042nb2s44","country_code":"US","type":"education","lineage":["https://openalex.org/I63966007"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Adam Chlipala","raw_affiliation_strings":["Massachusetts Institute of Technology, USA"],"affiliations":[{"raw_affiliation_string":"Massachusetts Institute of Technology, USA","institution_ids":["https://openalex.org/I63966007"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":7,"corresponding_author_ids":["https://openalex.org/A5031573662"],"corresponding_institution_ids":["https://openalex.org/I63966007"],"apc_list":null,"apc_paid":null,"fwci":0.5298,"has_fulltext":true,"cited_by_count":3,"citation_normalized_percentile":{"value":0.71989397,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":96},"biblio":{"volume":"7","issue":"ICFP","first_page":"108","last_page":"124"},"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.9998000264167786,"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.9998000264167786,"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/T11424","display_name":"Security and Verification in Computing","score":0.9990000128746033,"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.9962000250816345,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8201919794082642},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7964643239974976},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.7127026319503784},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.5734376907348633},{"id":"https://openalex.org/keywords/operational-semantics","display_name":"Operational semantics","score":0.5383710861206055},{"id":"https://openalex.org/keywords/computational-semantics","display_name":"Computational semantics","score":0.47483545541763306},{"id":"https://openalex.org/keywords/formal-semantics","display_name":"Formal semantics (linguistics)","score":0.44167864322662354},{"id":"https://openalex.org/keywords/action-semantics","display_name":"Action semantics","score":0.4346464276313782},{"id":"https://openalex.org/keywords/denotational-semantics","display_name":"Denotational semantics","score":0.4245806634426117},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.4238378405570984},{"id":"https://openalex.org/keywords/debugging","display_name":"Debugging","score":0.422709196805954},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.4186934232711792},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.24633058905601501},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.1940213143825531}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8201919794082642},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7964643239974976},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7127026319503784},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.5734376907348633},{"id":"https://openalex.org/C156325763","wikidata":"https://www.wikidata.org/wiki/Q1930895","display_name":"Operational semantics","level":3,"score":0.5383710861206055},{"id":"https://openalex.org/C200065993","wikidata":"https://www.wikidata.org/wiki/Q3954981","display_name":"Computational semantics","level":4,"score":0.47483545541763306},{"id":"https://openalex.org/C146499914","wikidata":"https://www.wikidata.org/wiki/Q5469969","display_name":"Formal semantics (linguistics)","level":2,"score":0.44167864322662354},{"id":"https://openalex.org/C150607116","wikidata":"https://www.wikidata.org/wiki/Q4677421","display_name":"Action semantics","level":5,"score":0.4346464276313782},{"id":"https://openalex.org/C207648694","wikidata":"https://www.wikidata.org/wiki/Q1189746","display_name":"Denotational semantics","level":4,"score":0.4245806634426117},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.4238378405570984},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.422709196805954},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.4186934232711792},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.24633058905601501},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.1940213143825531}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3607833","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3607833","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3607833","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"}],"best_oa_location":{"id":"doi:10.1145/3607833","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3607833","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3607833","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/4","score":0.5400000214576721,"display_name":"Quality Education"}],"awards":[{"id":"https://openalex.org/G529548107","display_name":null,"funder_award_id":"CCF-1521584","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G6432411175","display_name":null,"funder_award_id":"HR001118C0018","funder_id":"https://openalex.org/F4320332180","funder_display_name":"Defense Advanced Research Projects Agency"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320332180","display_name":"Defense Advanced Research Projects Agency","ror":"https://ror.org/02caytj08"},{"id":"https://openalex.org/F4320332815","display_name":"Advanced Research Projects Agency","ror":"https://ror.org/02caytj08"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4386316895.pdf","grobid_xml":"https://content.openalex.org/works/W4386316895.grobid-xml"},"referenced_works_count":20,"referenced_works":["https://openalex.org/W21733400","https://openalex.org/W1501535194","https://openalex.org/W1755481569","https://openalex.org/W2037984920","https://openalex.org/W2049600101","https://openalex.org/W2059895047","https://openalex.org/W2073001576","https://openalex.org/W2100424584","https://openalex.org/W2566098178","https://openalex.org/W2624503265","https://openalex.org/W2886472010","https://openalex.org/W2899599233","https://openalex.org/W2995075587","https://openalex.org/W3011074696","https://openalex.org/W3124307800","https://openalex.org/W3175981353","https://openalex.org/W4239031877","https://openalex.org/W4281916531","https://openalex.org/W6950507085","https://openalex.org/W6966692337"],"related_works":["https://openalex.org/W1975908952","https://openalex.org/W2089938479","https://openalex.org/W2348616540","https://openalex.org/W2073736684","https://openalex.org/W1487472891","https://openalex.org/W1426476981","https://openalex.org/W1530733469","https://openalex.org/W4285217401","https://openalex.org/W3106373601","https://openalex.org/W3007870257"],"abstract_inverted_index":{"Instruction":[0],"sets,":[1,30],"from":[2],"families":[3],"like":[4,54],"x86":[5],"and":[6,21,59,128,134,139],"ARM,":[7],"are":[8,63],"at":[9],"the":[10,57,66,72,75,140],"center":[11],"of":[12,28,68,74,95,111,131,153],"many":[13],"ambitious":[14],"formal-methods":[15],"projects.":[16],"Many":[17],"verification,":[18],"synthesis,":[19],"programming,":[20],"debugging":[22],"tools":[23,33,49,62],"rely":[24],"on":[25,51,102,109],"formal":[26],"semantics":[27,36,46,88,112,122],"instruction":[29,69],"but":[31],"different":[32,39,85],"can":[34,149],"use":[35],"in":[37,90],"rather":[38],"ways.":[40],"The":[41],"best-known":[42],"work":[43],"applying":[44],"single":[45,120],"across":[47],"diverse":[48],"relies":[50],"domain-specific":[52],"languages":[53],"Sail,":[55],"where":[56],"language":[58,105],"its":[60],"translation":[61],"specialized":[64],"to":[65,82,123,142],"realm":[67],"sets.":[70],"In":[71],"context":[73],"open":[76],"RISC-V":[77],"instruction-set":[78],"family,":[79],"we":[80],"decided":[81],"explore":[83],"a":[84,91,119],"approach,":[86],"with":[87],"written":[89],"carefully":[92],"chosen":[93],"subset":[94],"Haskell.":[96],"This":[97],"style":[98],"does":[99],"not":[100],"depend":[101],"any":[103],"new":[104],"translators,":[106],"relying":[107],"instead":[108],"parameterization":[110],"over":[113,144],"type-class":[114],"instances.":[115],"We":[116],"have":[117],"used":[118],"core":[121],"support":[124,150],"testing,":[125],"interactive":[126],"proof,":[127],"model":[129],"checking":[130],"both":[132],"software":[133],"hardware,":[135],"demonstrating":[136],"that":[137],"monads":[138],"ability":[141],"abstract":[143],"them":[145],"using":[146],"type":[147],"classes":[148],"pleasant":[151],"prototyping":[152],"ISA":[154],"semantics.":[155]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":1}],"updated_date":"2026-03-15T09:29:46.208133","created_date":"2025-10-10T00:00:00"}
