{"id":"https://openalex.org/W4307886767","doi":"https://doi.org/10.1145/3563355","title":"Intrinsically-typed definitional interpreters \u00e0 la carte","display_name":"Intrinsically-typed definitional interpreters \u00e0 la carte","publication_year":2022,"publication_date":"2022-10-31","ids":{"openalex":"https://openalex.org/W4307886767","doi":"https://doi.org/10.1145/3563355"},"language":"en","primary_location":{"id":"doi:10.1145/3563355","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563355","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563355","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/3563355","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5040458112","display_name":"Cas van der Rest","orcid":"https://orcid.org/0000-0002-0059-5353"},"institutions":[{"id":"https://openalex.org/I98358874","display_name":"Delft University of Technology","ror":"https://ror.org/02e2c7k09","country_code":"NL","type":"education","lineage":["https://openalex.org/I98358874"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Cas van der Rest","raw_affiliation_strings":["Delft University of Technology, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-0059-5353","affiliations":[{"raw_affiliation_string":"Delft University of Technology, Netherlands","institution_ids":["https://openalex.org/I98358874"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5087571354","display_name":"Casper Bach Poulsen","orcid":"https://orcid.org/0000-0003-0622-7639"},"institutions":[{"id":"https://openalex.org/I98358874","display_name":"Delft University of Technology","ror":"https://ror.org/02e2c7k09","country_code":"NL","type":"education","lineage":["https://openalex.org/I98358874"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Casper Bach Poulsen","raw_affiliation_strings":["Delft University of Technology, Netherlands"],"raw_orcid":"https://orcid.org/0000-0003-0622-7639","affiliations":[{"raw_affiliation_string":"Delft University of Technology, Netherlands","institution_ids":["https://openalex.org/I98358874"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5020051426","display_name":"Arjen Rouvoet","orcid":"https://orcid.org/0000-0002-4789-9995"},"institutions":[{"id":"https://openalex.org/I98358874","display_name":"Delft University of Technology","ror":"https://ror.org/02e2c7k09","country_code":"NL","type":"education","lineage":["https://openalex.org/I98358874"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Arjen Rouvoet","raw_affiliation_strings":["Delft University of Technology, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-4789-9995","affiliations":[{"raw_affiliation_string":"Delft University of Technology, Netherlands","institution_ids":["https://openalex.org/I98358874"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5072923235","display_name":"Eelco Visser","orcid":"https://orcid.org/0000-0002-7384-3370"},"institutions":[{"id":"https://openalex.org/I98358874","display_name":"Delft University of Technology","ror":"https://ror.org/02e2c7k09","country_code":"NL","type":"education","lineage":["https://openalex.org/I98358874"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Eelco Visser","raw_affiliation_strings":["Delft University of Technology, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-7384-3370","affiliations":[{"raw_affiliation_string":"Delft University of Technology, Netherlands","institution_ids":["https://openalex.org/I98358874"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5081843559","display_name":"Peter D. Mosses","orcid":"https://orcid.org/0000-0002-5826-7520"},"institutions":[{"id":"https://openalex.org/I98358874","display_name":"Delft University of Technology","ror":"https://ror.org/02e2c7k09","country_code":"NL","type":"education","lineage":["https://openalex.org/I98358874"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Peter Mosses","raw_affiliation_strings":["Delft University of Technology, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-5826-7520","affiliations":[{"raw_affiliation_string":"Delft University of Technology, Netherlands","institution_ids":["https://openalex.org/I98358874"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.6648,"has_fulltext":true,"cited_by_count":12,"citation_normalized_percentile":{"value":0.86581759,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":96,"max":98},"biblio":{"volume":"6","issue":"OOPSLA2","first_page":"1903","last_page":"1932"},"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.9994999766349792,"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.9994999766349792,"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.9977999925613403,"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/T11424","display_name":"Security and Verification in Computing","score":0.9966999888420105,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7976491451263428},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.7296640872955322},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7154064774513245},{"id":"https://openalex.org/keywords/interpreter","display_name":"Interpreter","score":0.6165949702262878},{"id":"https://openalex.org/keywords/component","display_name":"Component (thermodynamics)","score":0.5446606874465942},{"id":"https://openalex.org/keywords/type-safety","display_name":"Type safety","score":0.4981224536895752},{"id":"https://openalex.org/keywords/abstraction","display_name":"Abstraction","score":0.47310686111450195},{"id":"https://openalex.org/keywords/grasp","display_name":"GRASP","score":0.46789634227752686},{"id":"https://openalex.org/keywords/reuse","display_name":"Reuse","score":0.4669910967350006},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.07696545124053955}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7976491451263428},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.7296640872955322},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7154064774513245},{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.6165949702262878},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.5446606874465942},{"id":"https://openalex.org/C44779574","wikidata":"https://www.wikidata.org/wiki/Q736866","display_name":"Type safety","level":2,"score":0.4981224536895752},{"id":"https://openalex.org/C124304363","wikidata":"https://www.wikidata.org/wiki/Q673661","display_name":"Abstraction","level":2,"score":0.47310686111450195},{"id":"https://openalex.org/C171268870","wikidata":"https://www.wikidata.org/wiki/Q1486676","display_name":"GRASP","level":2,"score":0.46789634227752686},{"id":"https://openalex.org/C206588197","wikidata":"https://www.wikidata.org/wiki/Q846574","display_name":"Reuse","level":2,"score":0.4669910967350006},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.07696545124053955},{"id":"https://openalex.org/C548081761","wikidata":"https://www.wikidata.org/wiki/Q180388","display_name":"Waste management","level":1,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3563355","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563355","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563355","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:tudelft.nl:uuid:bfb4aaec-3a78-4a58-a788-cfd7e23991ba","is_oa":false,"landing_page_url":"http://resolver.tudelft.nl/uuid:bfb4aaec-3a78-4a58-a788-cfd7e23991ba","pdf_url":null,"source":{"id":"https://openalex.org/S4306400906","display_name":"Research Repository (Delft University of Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I98358874","host_organization_name":"Delft University of Technology","host_organization_lineage":["https://openalex.org/I98358874"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"journal article"}],"best_oa_location":{"id":"doi:10.1145/3563355","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563355","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563355","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.49000000953674316,"display_name":"Quality Education"}],"awards":[{"id":"https://openalex.org/G903443287","display_name":null,"funder_award_id":"VI.Veni.192.259","funder_id":"https://openalex.org/F4320321800","funder_display_name":"Nederlandse Organisatie voor Wetenschappelijk Onderzoek"}],"funders":[{"id":"https://openalex.org/F4320321800","display_name":"Nederlandse Organisatie voor Wetenschappelijk Onderzoek","ror":"https://ror.org/04jsz6e67"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4307886767.pdf","grobid_xml":"https://content.openalex.org/works/W4307886767.grobid-xml"},"referenced_works_count":47,"referenced_works":["https://openalex.org/W1557561422","https://openalex.org/W1969365324","https://openalex.org/W1971933951","https://openalex.org/W1980939032","https://openalex.org/W1982209843","https://openalex.org/W1997143185","https://openalex.org/W2012619465","https://openalex.org/W2016799432","https://openalex.org/W2019629593","https://openalex.org/W2073001576","https://openalex.org/W2075277371","https://openalex.org/W2079640625","https://openalex.org/W2084115964","https://openalex.org/W2104422179","https://openalex.org/W2109775380","https://openalex.org/W2123092976","https://openalex.org/W2128448167","https://openalex.org/W2141576692","https://openalex.org/W2150595070","https://openalex.org/W2156876717","https://openalex.org/W2163552400","https://openalex.org/W2164719159","https://openalex.org/W2166822586","https://openalex.org/W2171679530","https://openalex.org/W2181666843","https://openalex.org/W2223012247","https://openalex.org/W2281310552","https://openalex.org/W2290325328","https://openalex.org/W2390888944","https://openalex.org/W2487685844","https://openalex.org/W2560908054","https://openalex.org/W2777364118","https://openalex.org/W2884724299","https://openalex.org/W2970326002","https://openalex.org/W2995075587","https://openalex.org/W3100491053","https://openalex.org/W3124307800","https://openalex.org/W3145985496","https://openalex.org/W3196027996","https://openalex.org/W4213453328","https://openalex.org/W4230898613","https://openalex.org/W4238187368","https://openalex.org/W4240072532","https://openalex.org/W4242767025","https://openalex.org/W4244792373","https://openalex.org/W4246086292","https://openalex.org/W6969362930"],"related_works":["https://openalex.org/W2163296013","https://openalex.org/W165915117","https://openalex.org/W2326995835","https://openalex.org/W2743859443","https://openalex.org/W2059402478","https://openalex.org/W2123347777","https://openalex.org/W4387804363","https://openalex.org/W2477150073","https://openalex.org/W2019547100","https://openalex.org/W2141327274"],"abstract_inverted_index":{"Specifying":[0],"and":[1,20,54,75,94,111],"mechanically":[2],"verifying":[3],"type":[4,98,135],"safe":[5,99],"programming":[6],"languages":[7],"requires":[8],"significant":[9],"effort.":[10],"This":[11,45],"effort":[12],"can":[13],"in":[14],"theory":[15],"be":[16],"reduced":[17],"by":[18],"defining":[19],"reusing":[21],"pre-verified,":[22],"modular":[23,31,78,131],"components.":[24],"In":[25],"practice,":[26],"however,":[27],"existing":[28,56,83],"approaches":[29,129],"to":[30,49,60,82,113,130],"mechanical":[32,132],"verification":[33,133],"require":[34,121],"many":[35],"times":[36,124],"as":[37,41,80,109,115],"much":[38],"specification":[39,93],"code":[40,126],"plain,":[42,116],"monolithic":[43,117],"definitions.":[44],"makes":[46,55],"it":[47],"hard":[48,59],"develop":[50,114],"new":[51,89],"reusable":[52],"components,":[53],"component":[57],"specifications":[58,79],"grasp.":[61],"We":[62],"present":[63],"an":[64],"alternative":[65],"approach":[66],"based":[67],"on":[68],"intrinsically-typed":[69,118],"interpreters,":[70,119],"which":[71],"reduces":[72],"the":[73],"size":[74],"complexity":[76],"of":[77,96,134],"compared":[81],"approaches.":[84],"Furthermore,":[85],"we":[86],"introduce":[87],"a":[88],"abstraction":[90],"for":[91],"safe-by-construction":[92],"composition":[95],"pre-verified":[97],"language":[100,102],"components:":[101],"fragments":[103,106],".":[104],"Language":[105],"are":[107],"about":[108,122],"concise":[110],"easy":[112],"but":[120],"10":[123],"less":[125],"than":[127],"previous":[128],"safety.":[136]},"counts_by_year":[{"year":2025,"cited_by_count":5},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":3}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
