{"id":"https://openalex.org/W3200921499","doi":"https://doi.org/10.22152/programming-journal.org/2022/6/7","title":"Continuation-Passing Style, Defunctionalization, Accumulations, and Associativity","display_name":"Continuation-Passing Style, Defunctionalization, Accumulations, and Associativity","publication_year":2021,"publication_date":"2021-11-15","ids":{"openalex":"https://openalex.org/W3200921499","doi":"https://doi.org/10.22152/programming-journal.org/2022/6/7","mag":"3200921499"},"language":"en","primary_location":{"id":"doi:10.22152/programming-journal.org/2022/6/7","is_oa":true,"landing_page_url":"https://doi.org/10.22152/programming-journal.org/2022/6/7","pdf_url":"https://arxiv.org/pdf/2111.10413v1","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://arxiv.org/pdf/2111.10413v1","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5086558126","display_name":"Jeremy Gibbons","orcid":"https://orcid.org/0000-0002-8426-9917"},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Jeremy Gibbons","raw_affiliation_strings":["University of Oxford, UK"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Oxford, UK","institution_ids":["https://openalex.org/I40120149"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5086558126"],"corresponding_institution_ids":["https://openalex.org/I40120149"],"apc_list":null,"apc_paid":null,"fwci":0.2607,"has_fulltext":true,"cited_by_count":6,"citation_normalized_percentile":{"value":0.65318308,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"6","issue":"2","first_page":null,"last_page":null},"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.9922999739646912,"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.9922999739646912,"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/T11010","display_name":"Logic, Reasoning, and Knowledge","score":0.980400025844574,"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.9702000021934509,"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.7005324363708496},{"id":"https://openalex.org/keywords/associative-property","display_name":"Associative property","score":0.6537356972694397},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5711243152618408},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.5551472306251526},{"id":"https://openalex.org/keywords/continuation","display_name":"Continuation","score":0.5021388530731201},{"id":"https://openalex.org/keywords/interpreter","display_name":"Interpreter","score":0.44884076714515686},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.4461188316345215},{"id":"https://openalex.org/keywords/simple","display_name":"Simple (philosophy)","score":0.4309748411178589},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3684103786945343},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.15106791257858276},{"id":"https://openalex.org/keywords/epistemology","display_name":"Epistemology","score":0.09054639935493469}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7005324363708496},{"id":"https://openalex.org/C159423971","wikidata":"https://www.wikidata.org/wiki/Q177251","display_name":"Associative property","level":2,"score":0.6537356972694397},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5711243152618408},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.5551472306251526},{"id":"https://openalex.org/C88626702","wikidata":"https://www.wikidata.org/wiki/Q1128903","display_name":"Continuation","level":2,"score":0.5021388530731201},{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.44884076714515686},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.4461188316345215},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.4309748411178589},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3684103786945343},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.15106791257858276},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.09054639935493469},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.22152/programming-journal.org/2022/6/7","is_oa":true,"landing_page_url":"https://doi.org/10.22152/programming-journal.org/2022/6/7","pdf_url":"https://arxiv.org/pdf/2111.10413v1","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:2111.10413","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2111.10413","pdf_url":"https://arxiv.org/pdf/2111.10413","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"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":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"doi:10.22152/programming-journal.org/2022/6/7","is_oa":true,"landing_page_url":"https://doi.org/10.22152/programming-journal.org/2022/6/7","pdf_url":"https://arxiv.org/pdf/2111.10413v1","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},"sustainable_development_goals":[{"display_name":"Quality Education","score":0.4699999988079071,"id":"https://metadata.un.org/sdg/4"}],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3200921499.pdf","grobid_xml":"https://content.openalex.org/works/W3200921499.grobid-xml"},"referenced_works_count":2,"referenced_works":["https://openalex.org/W168212000","https://openalex.org/W2102435409"],"related_works":["https://openalex.org/W2352275403","https://openalex.org/W2159885618","https://openalex.org/W1994937216","https://openalex.org/W1721418433","https://openalex.org/W2463512549","https://openalex.org/W2246915267","https://openalex.org/W2199313715","https://openalex.org/W2004305899","https://openalex.org/W1844878253","https://openalex.org/W2611574984"],"abstract_inverted_index":{"Context":[0],"Reynolds":[1],"showed":[2],"us":[3],"how":[4],"to":[5,11],"use":[6],"continuation-passing":[7],"style":[8],"and":[9,37],"defunctionalization":[10],"transform":[12],"a":[13,17],"recursive":[14],"interpreter":[15],"for":[16,23],"language":[18],"into":[19],"an":[20],"abstract":[21],"machine":[22],"programs":[24],"in":[25],"that":[26],"language.":[27],"The":[28],"same":[29],"techniques":[30],"explain":[31],"other":[32],"programming":[33],"tricks,":[34],"including":[35],"zippers":[36],"accumulating":[38],"parameters.":[39]},"counts_by_year":[{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":1},{"year":2021,"cited_by_count":1}],"updated_date":"2026-07-28T07:46:37.118299","created_date":"2025-10-10T00:00:00"}
