{"id":"https://openalex.org/W2966278018","doi":"https://doi.org/10.1145/3331542.3342571","title":"Runtime type safety for Erlang/otp behaviours","display_name":"Runtime type safety for Erlang/otp behaviours","publication_year":2019,"publication_date":"2019-07-29","ids":{"openalex":"https://openalex.org/W2966278018","doi":"https://doi.org/10.1145/3331542.3342571","mag":"2966278018"},"language":"en","primary_location":{"id":"doi:10.1145/3331542.3342571","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3331542.3342571","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 Workshop on Erlang","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/A5035852687","display_name":"Joseph R. Harrison","orcid":"https://orcid.org/0000-0003-2211-8977"},"institutions":[{"id":"https://openalex.org/I20581793","display_name":"University of Kent","ror":"https://ror.org/00xkeyj56","country_code":"GB","type":"education","lineage":["https://openalex.org/I20581793"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Joseph Harrison","raw_affiliation_strings":["University of Kent, UK"],"affiliations":[{"raw_affiliation_string":"University of Kent, UK","institution_ids":["https://openalex.org/I20581793"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5035852687"],"corresponding_institution_ids":["https://openalex.org/I20581793"],"apc_list":null,"apc_paid":null,"fwci":0.4201,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.70781346,"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":"36","last_page":"47"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9986000061035156,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9986000061035156,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9977999925613403,"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/T11424","display_name":"Security and Verification in Computing","score":0.9976000189781189,"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/callback","display_name":"Callback","score":0.9398762583732605},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8271545171737671},{"id":"https://openalex.org/keywords/type-inference","display_name":"Type inference","score":0.8094244599342346},{"id":"https://openalex.org/keywords/erlang","display_name":"Erlang (programming language)","score":0.7848093509674072},{"id":"https://openalex.org/keywords/type-safety","display_name":"Type safety","score":0.6331391334533691},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5861321687698364},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.5230846405029297},{"id":"https://openalex.org/keywords/crash","display_name":"Crash","score":0.48374485969543457},{"id":"https://openalex.org/keywords/inference","display_name":"Inference","score":0.3652295768260956},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.26045411825180054},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.10473397374153137}],"concepts":[{"id":"https://openalex.org/C204495577","wikidata":"https://www.wikidata.org/wiki/Q1205349","display_name":"Callback","level":2,"score":0.9398762583732605},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8271545171737671},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.8094244599342346},{"id":"https://openalex.org/C82484044","wikidata":"https://www.wikidata.org/wiki/Q334879","display_name":"Erlang (programming language)","level":3,"score":0.7848093509674072},{"id":"https://openalex.org/C44779574","wikidata":"https://www.wikidata.org/wiki/Q736866","display_name":"Type safety","level":2,"score":0.6331391334533691},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5861321687698364},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.5230846405029297},{"id":"https://openalex.org/C183469790","wikidata":"https://www.wikidata.org/wiki/Q333501","display_name":"Crash","level":2,"score":0.48374485969543457},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.3652295768260956},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.26045411825180054},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.10473397374153137}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3331542.3342571","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3331542.3342571","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 Workshop on Erlang","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/16","score":0.6100000143051147,"display_name":"Peace, Justice and strong institutions"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":15,"referenced_works":["https://openalex.org/W592242589","https://openalex.org/W1978899117","https://openalex.org/W2008732772","https://openalex.org/W2030358379","https://openalex.org/W2083030183","https://openalex.org/W2112609211","https://openalex.org/W2119717320","https://openalex.org/W2122811495","https://openalex.org/W2171326679","https://openalex.org/W2517846761","https://openalex.org/W2522514395","https://openalex.org/W2584381671","https://openalex.org/W2752932970","https://openalex.org/W2889790155","https://openalex.org/W4244488020"],"related_works":["https://openalex.org/W2098211566","https://openalex.org/W2123344956","https://openalex.org/W2594902612","https://openalex.org/W2966278018","https://openalex.org/W1531484838","https://openalex.org/W1726238843","https://openalex.org/W3141365533","https://openalex.org/W2129345992","https://openalex.org/W2135265328","https://openalex.org/W4237270226"],"abstract_inverted_index":{"Callback-oriented":[0],"Erlang/OTP":[1],"behaviours":[2],"such":[3],"as":[4],"the":[5,34,70],"gen_server":[6,75],"library":[7],"are":[8,76],"susceptible":[9],"to":[10,19,69,78],"malformed":[11],"requests":[12],"and":[13,67],"ill-typed":[14],"messages,":[15],"causing":[16],"server":[17,82],"processes":[18,83],"crash":[20],"unless":[21],"a":[22,37,46,53],"defensive":[23],"programming":[24],"style":[25],"is":[26],"used.":[27],"We":[28],"contribute":[29],"an":[30],"alternative":[31],"approach":[32],"in":[33],"form":[35],"of":[36,42,48,60,74],"fully":[38],"automatic":[39,64],"hybrid":[40],"analysis":[41],"callback":[43],"modules":[44],"using":[45],"notion":[47],"type":[49,62,89],"safety":[50],"based":[51],"upon":[52],"sub-typing":[54],"relation":[55],"for":[56],"Erlang.":[57],"A":[58],"combination":[59],"compile-time":[61],"inference,":[63],"code":[65,73],"injection,":[66],"modifications":[68],"request":[71],"dispatch":[72],"used":[77],"demonstrate":[79],"how":[80],"generic":[81],"can":[84],"be":[85],"protected":[86],"from":[87],"client-side":[88],"errors.":[90]},"counts_by_year":[{"year":2022,"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"}
