{"id":"https://openalex.org/W1977745603","doi":"https://doi.org/10.1145/2036918.2036923","title":"Embedding polymorphic dynamic typing","display_name":"Embedding polymorphic dynamic typing","publication_year":2011,"publication_date":"2011-09-18","ids":{"openalex":"https://openalex.org/W1977745603","doi":"https://doi.org/10.1145/2036918.2036923","mag":"1977745603"},"language":"en","primary_location":{"id":"doi:10.1145/2036918.2036923","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2036918.2036923","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the seventh ACM SIGPLAN workshop on Generic programming","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/A5072057521","display_name":"Thomas van Noort","orcid":null},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":true,"raw_author_name":"Thomas van Noort","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, Netherlands","Radboud University Nijmegen, Nijmegen, Netherlands#TAB#"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands","institution_ids":["https://openalex.org/I145872427"]},{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands#TAB#","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5019085361","display_name":"Wouter Swierstra","orcid":"https://orcid.org/0000-0002-0295-7944"},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Wouter Swierstra","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, Netherlands","Radboud University Nijmegen, Nijmegen, Netherlands#TAB#"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands","institution_ids":["https://openalex.org/I145872427"]},{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands#TAB#","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5081280625","display_name":"Peter Achten","orcid":"https://orcid.org/0000-0002-3585-7165"},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Peter Achten","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, Netherlands","Radboud University Nijmegen, Nijmegen, Netherlands#TAB#"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands","institution_ids":["https://openalex.org/I145872427"]},{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands#TAB#","institution_ids":["https://openalex.org/I145872427"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5049917627","display_name":"Rinus Plasmeijer","orcid":"https://orcid.org/0009-0007-1606-8412"},"institutions":[{"id":"https://openalex.org/I145872427","display_name":"Radboud University Nijmegen","ror":"https://ror.org/016xsfp80","country_code":"NL","type":"education","lineage":["https://openalex.org/I145872427"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Rinus Plasmeijer","raw_affiliation_strings":["Radboud University Nijmegen, Nijmegen, Netherlands","Radboud University Nijmegen, Nijmegen, Netherlands#TAB#"],"affiliations":[{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands","institution_ids":["https://openalex.org/I145872427"]},{"raw_affiliation_string":"Radboud University Nijmegen, Nijmegen, Netherlands#TAB#","institution_ids":["https://openalex.org/I145872427"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5072057521"],"corresponding_institution_ids":["https://openalex.org/I145872427"],"apc_list":null,"apc_paid":null,"fwci":0.4276,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.70665276,"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":"25","last_page":"36"},"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/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.987500011920929,"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/T10142","display_name":"Formal Methods in Verification","score":0.9692000150680542,"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/haskell","display_name":"Haskell","score":0.9283109903335571},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8249067664146423},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7719417214393616},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.6738530397415161},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6297107934951782},{"id":"https://openalex.org/keywords/embedding","display_name":"Embedding","score":0.5884101986885071},{"id":"https://openalex.org/keywords/type-inference","display_name":"Type inference","score":0.5614254474639893},{"id":"https://openalex.org/keywords/type-theory","display_name":"Type theory","score":0.4672201871871948},{"id":"https://openalex.org/keywords/typing","display_name":"Typing","score":0.4632495641708374},{"id":"https://openalex.org/keywords/unification","display_name":"Unification","score":0.44911113381385803},{"id":"https://openalex.org/keywords/exception-handling","display_name":"Exception handling","score":0.4306792616844177},{"id":"https://openalex.org/keywords/syntax","display_name":"Syntax","score":0.422776460647583},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.387786328792572},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.3157848119735718},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.19351890683174133},{"id":"https://openalex.org/keywords/inference","display_name":"Inference","score":0.07569175958633423}],"concepts":[{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.9283109903335571},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8249067664146423},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7719417214393616},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.6738530397415161},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6297107934951782},{"id":"https://openalex.org/C41608201","wikidata":"https://www.wikidata.org/wiki/Q980509","display_name":"Embedding","level":2,"score":0.5884101986885071},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.5614254474639893},{"id":"https://openalex.org/C93682546","wikidata":"https://www.wikidata.org/wiki/Q1056428","display_name":"Type theory","level":3,"score":0.4672201871871948},{"id":"https://openalex.org/C2781209916","wikidata":"https://www.wikidata.org/wiki/Q3215756","display_name":"Typing","level":2,"score":0.4632495641708374},{"id":"https://openalex.org/C96146094","wikidata":"https://www.wikidata.org/wiki/Q609057","display_name":"Unification","level":2,"score":0.44911113381385803},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.4306792616844177},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.422776460647583},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.387786328792572},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.3157848119735718},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.19351890683174133},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.07569175958633423},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0},{"id":"https://openalex.org/C28490314","wikidata":"https://www.wikidata.org/wiki/Q189436","display_name":"Speech recognition","level":1,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/2036918.2036923","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2036918.2036923","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the seventh ACM SIGPLAN workshop on Generic programming","raw_type":"proceedings-article"},{"id":"pmh:oai:repository.ubn.ru.nl:2066/91767","is_oa":false,"landing_page_url":"https://hdl.handle.net/2066/91767","pdf_url":null,"source":{"id":"https://openalex.org/S4306401067","display_name":"Radboud Repository (Radboud University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I145872427","host_organization_name":"Radboud University Nijmegen","host_organization_lineage":["https://openalex.org/I145872427"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Article in monograph or in proceedings"},{"id":"pmh:ru:oai:repository.ubn.ru.nl:2066/91767","is_oa":false,"landing_page_url":"http://hdl.handle.net/2066/91767","pdf_url":null,"source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"J\u00e4rvi, J.; Mu, S.-C. (ed.), ICFP '11 ACM SIGPLAN International Conference on Functional Programming  Tokyo, Japan \u2014 September 19 - 21, 2011 : Proceedings of the seventh ACM SIGPLAN workshop on Generic programming, 25 - 36. New York : ACM","raw_type":"info:eu-repo/semantics/article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320334893","display_name":"Stichting voor de Technische Wetenschappen","ror":"https://ror.org/057tq3593"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":29,"referenced_works":["https://openalex.org/W1502282368","https://openalex.org/W1507453992","https://openalex.org/W1572387991","https://openalex.org/W1575675278","https://openalex.org/W1578113853","https://openalex.org/W1692569295","https://openalex.org/W1967061556","https://openalex.org/W1973817937","https://openalex.org/W1982209843","https://openalex.org/W1982230416","https://openalex.org/W1986121459","https://openalex.org/W1987203566","https://openalex.org/W2009464583","https://openalex.org/W2017532341","https://openalex.org/W2019766167","https://openalex.org/W2025949389","https://openalex.org/W2082367883","https://openalex.org/W2098926504","https://openalex.org/W2117552698","https://openalex.org/W2136177623","https://openalex.org/W2136651263","https://openalex.org/W2140647971","https://openalex.org/W2160930653","https://openalex.org/W2561675875","https://openalex.org/W2568721247","https://openalex.org/W4213090963","https://openalex.org/W4237116508","https://openalex.org/W4237428230","https://openalex.org/W6654800234"],"related_works":["https://openalex.org/W1886401053","https://openalex.org/W2112263414","https://openalex.org/W3004782279","https://openalex.org/W1550049051","https://openalex.org/W1602185604","https://openalex.org/W2028779182","https://openalex.org/W2113619131","https://openalex.org/W2095136535","https://openalex.org/W2005083846","https://openalex.org/W3006157134"],"abstract_inverted_index":{"Dynamic":[0],"typing":[1,61,78,87,112],"in":[2,103,106,163],"a":[3,55,80,98,151,172,186,193,220],"statically":[4],"typed":[5],"functional":[6,152,195],"language":[7,90,131,139,153,196],"allows":[8],"us":[9],"to":[10,127,154,180],"defer":[11],"type":[12,29,207],"unification":[13],"until":[14],"run":[15],"time.":[16],"This":[17],"is":[18,65,72,97,114],"typically":[19],"useful":[20],"when":[21],"interacting":[22],"with":[23,214],"the":[24,28,51,93,104,107,110,121,129,135,138,175,190,201,223],"'outside'":[25],"world":[26],"where":[27,63],"of":[30,101,137,177],"values":[31],"involved":[32],"may":[33],"not":[34,125],"be":[35],"known":[36],"statically.":[37],"Haskell":[38,74,122,164],"has":[39,54],"minimal":[40],"support":[41],"for":[42,150,174,192,222],"dynamic":[43,60,77,86,111,157],"typing,":[44],"it":[45,148],"only":[46],"supports":[47],"monomorphism.":[48],"Clean,":[49],"on":[50,116,206],"other":[52],"hand,":[53],"more":[56],"rich":[57],"and":[58,132,140,169,199,218],"mature":[59],"system":[62,113],"polymorphism":[64],"supported":[66],"as":[67,185],"well.":[68],"An":[69],"interesting":[70],"difference":[71],"that":[73,171],"offers":[75,84],"monomorphic":[76],"via":[79,88],"library,":[81],"while":[82],"Clean":[83,94],"polymorphic":[85,156],"built-in":[89],"support.":[91],"In":[92,142],"approach":[95,123,213],"there":[96],"great":[99],"deal":[100],"freedom":[102],"implementation":[105],"compiler":[108],"since":[109],"defined":[115],"abstract":[117],"syntax":[118],"trees,":[119],"whereas":[120],"does":[124],"need":[126,191],"extend":[128,211],"core":[130],"hence":[133],"reduces":[134],"complexity":[136],"compiler.":[141],"this":[143,212],"paper":[144],"we":[145,210],"investigate":[146],"what":[147],"takes":[149],"embed":[155],"typing.":[158],"We":[159,188],"explore":[160],"an":[161,215],"embedding":[162,202],"using":[165,203],"generalised":[166],"algebraic":[167],"datatypes":[168],"argue":[170],"universe":[173],"representation":[176],"types":[178],"needs":[179],"separated":[181],"from":[182],"its":[183],"interpretation":[184],"type.":[187],"motivate":[189],"dependently-typed":[194],"like":[197],"Agda":[198],"perform":[200],"structural":[204],"equality":[205],"representations.":[208],"Finally,":[209],"instance-of":[216],"algorithm":[217],"define":[219],"framework":[221],"corresponding":[224],"cast":[225],"function.":[226]},"counts_by_year":[{"year":2013,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
