{"id":"https://openalex.org/W4399992113","doi":"https://doi.org/10.1145/3674626","title":"Story of Your Lazy Function\u2019s Life: A Bidirectional Demand Semantics for Mechanized Cost Analysis of Lazy Programs","display_name":"Story of Your Lazy Function\u2019s Life: A Bidirectional Demand Semantics for Mechanized Cost Analysis of Lazy Programs","publication_year":2024,"publication_date":"2024-08-15","ids":{"openalex":"https://openalex.org/W4399992113","doi":"https://doi.org/10.1145/3674626"},"language":"en","primary_location":{"id":"doi:10.1145/3674626","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1145/3674626","pdf_url":null,"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":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"http://dx.doi.org/10.1145/3674626","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5031260536","display_name":"Li-yao Xia","orcid":"https://orcid.org/0000-0003-2673-4400"},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Li-yao Xia","raw_affiliation_strings":["Unaffiliated, Paris, France"],"affiliations":[{"raw_affiliation_string":"Unaffiliated, Paris, France","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5106525255","display_name":"Laura Israel","orcid":null},"institutions":[{"id":"https://openalex.org/I126345244","display_name":"Portland State University","ror":"https://ror.org/00yn2fy02","country_code":"US","type":"education","lineage":["https://openalex.org/I126345244"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Laura Israel","raw_affiliation_strings":["Portland State University, Portland, USA"],"affiliations":[{"raw_affiliation_string":"Portland State University, Portland, USA","institution_ids":["https://openalex.org/I126345244"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5099469334","display_name":"Maite Kramarz","orcid":"https://orcid.org/0009-0006-0623-2293"},"institutions":[{"id":"https://openalex.org/I185261750","display_name":"University of Toronto","ror":"https://ror.org/03dbr7087","country_code":"CA","type":"education","lineage":["https://openalex.org/I185261750"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Maite Kramarz","raw_affiliation_strings":["University of Toronto, Toronto, Canada"],"affiliations":[{"raw_affiliation_string":"University of Toronto, Toronto, Canada","institution_ids":["https://openalex.org/I185261750"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5051973830","display_name":"Nicholas Coltharp","orcid":"https://orcid.org/0000-0002-4832-7016"},"institutions":[{"id":"https://openalex.org/I126345244","display_name":"Portland State University","ror":"https://ror.org/00yn2fy02","country_code":"US","type":"education","lineage":["https://openalex.org/I126345244"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Nicholas Coltharp","raw_affiliation_strings":["Portland State University, Portland, USA"],"affiliations":[{"raw_affiliation_string":"Portland State University, Portland, USA","institution_ids":["https://openalex.org/I126345244"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5058771102","display_name":"Koen Claessen","orcid":"https://orcid.org/0000-0002-8113-4478"},"institutions":[{"id":"https://openalex.org/I66862912","display_name":"Chalmers University of Technology","ror":"https://ror.org/040wg7k59","country_code":"SE","type":"education","lineage":["https://openalex.org/I66862912"]}],"countries":["SE"],"is_corresponding":false,"raw_author_name":"Koen Claessen","raw_affiliation_strings":["Chalmers University of Technology, Gothenburg, Sweden"],"affiliations":[{"raw_affiliation_string":"Chalmers University of Technology, Gothenburg, Sweden","institution_ids":["https://openalex.org/I66862912"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5049220962","display_name":"Stephanie Weirich","orcid":"https://orcid.org/0000-0002-6756-9168"},"institutions":[{"id":"https://openalex.org/I79576946","display_name":"University of Pennsylvania","ror":"https://ror.org/00b30xv10","country_code":"US","type":"education","lineage":["https://openalex.org/I79576946"]},{"id":"https://openalex.org/I922845939","display_name":"Philadelphia University","ror":"https://ror.org/03zzmyz63","country_code":"US","type":"education","lineage":["https://openalex.org/I922845939"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Stephanie Weirich","raw_affiliation_strings":["University of Pennsylvania, Philadelphia, USA"],"affiliations":[{"raw_affiliation_string":"University of Pennsylvania, Philadelphia, USA","institution_ids":["https://openalex.org/I922845939","https://openalex.org/I79576946"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5100411211","display_name":"Yao Li","orcid":"https://orcid.org/0000-0001-8720-883X"},"institutions":[{"id":"https://openalex.org/I126345244","display_name":"Portland State University","ror":"https://ror.org/00yn2fy02","country_code":"US","type":"education","lineage":["https://openalex.org/I126345244"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Yao Li","raw_affiliation_strings":["Portland State University, Portland, USA"],"affiliations":[{"raw_affiliation_string":"Portland State University, Portland, USA","institution_ids":["https://openalex.org/I126345244"]}]}],"institutions":[],"countries_distinct_count":3,"institutions_distinct_count":7,"corresponding_author_ids":["https://openalex.org/A5031260536"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.0107,"has_fulltext":true,"cited_by_count":3,"citation_normalized_percentile":{"value":0.79543306,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":91,"max":99},"biblio":{"volume":"8","issue":"ICFP","first_page":"30","last_page":"63"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9987999796867371,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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.9950000047683716,"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.7970031499862671},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5960391759872437},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.5955681204795837},{"id":"https://openalex.org/keywords/lazy-evaluation","display_name":"Lazy evaluation","score":0.5536973476409912},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.5457422733306885},{"id":"https://openalex.org/keywords/sort","display_name":"sort","score":0.47390711307525635},{"id":"https://openalex.org/keywords/queue","display_name":"Queue","score":0.4515029191970825},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.41967862844467163},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.41292843222618103},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.40768271684646606}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7970031499862671},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5960391759872437},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.5955681204795837},{"id":"https://openalex.org/C128099668","wikidata":"https://www.wikidata.org/wiki/Q573952","display_name":"Lazy evaluation","level":3,"score":0.5536973476409912},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.5457422733306885},{"id":"https://openalex.org/C88548561","wikidata":"https://www.wikidata.org/wiki/Q347599","display_name":"sort","level":2,"score":0.47390711307525635},{"id":"https://openalex.org/C160403385","wikidata":"https://www.wikidata.org/wiki/Q220543","display_name":"Queue","level":2,"score":0.4515029191970825},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.41967862844467163},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.41292843222618103},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.40768271684646606},{"id":"https://openalex.org/C23123220","wikidata":"https://www.wikidata.org/wiki/Q816826","display_name":"Information retrieval","level":1,"score":0.0}],"mesh":[],"locations_count":6,"locations":[{"id":"doi:10.1145/3674626","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1145/3674626","pdf_url":null,"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:arXiv.org:2406.14787","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2406.14787","pdf_url":"https://arxiv.org/pdf/2406.14787","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},{"id":"pmh:oai:kops.uni-konstanz.de:123456789/76160","is_oa":true,"landing_page_url":"http://nbn-resolving.de/urn:nbn:de:bsz:352-2-rt5bt2m24yqk0","pdf_url":"https://kops.uni-konstanz.de/server/api/core/bitstreams/cc476b8f-b215-44e1-8574-ebd00bc852ad/content","source":{"id":"https://openalex.org/S4306401487","display_name":"KOPS (University of Konstanz)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I189712700","host_organization_name":"University of Konstanz","host_organization_lineage":["https://openalex.org/I189712700"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Proceedings of the ACM on Programming Languages. ACM. 2024, 8(ICFP), S. 30-63. eISSN 2475-1421. Verf\u00fcgbar unter: doi: 10.1145/3674626","raw_type":"doc-type:Text"},{"id":"pmh:oai:research.chalmers.se:542531","is_oa":true,"landing_page_url":"https://research.chalmers.se/en/publication/542531","pdf_url":"https://research.chalmers.se/publication/542531/file/542531_Fulltext.pdf","source":{"id":"https://openalex.org/S4306402469","display_name":"Chalmers Research (Chalmers University of Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I66862912","host_organization_name":"Chalmers University of Technology","host_organization_lineage":["https://openalex.org/I66862912"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":""},{"id":"pmh:oai:pdxscholar.library.pdx.edu:compsci_fac-1383","is_oa":true,"landing_page_url":"https://pdxscholar.library.pdx.edu/compsci_fac/377","pdf_url":null,"source":{"id":"https://openalex.org/S4377196300","display_name":"PDXScholar  (Portland State University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I126345244","host_organization_name":"Portland State University","host_organization_lineage":["https://openalex.org/I126345244"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Computer Science Faculty Publications and Presentations","raw_type":"text"},{"id":"pmh:oai:pdxscholar.library.pdx.edu:compsci_fac-1401","is_oa":true,"landing_page_url":"https://pdxscholar.library.pdx.edu/compsci_fac/395","pdf_url":null,"source":{"id":"https://openalex.org/S4377196300","display_name":"PDXScholar  (Portland State University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I126345244","host_organization_name":"Portland State University","host_organization_lineage":["https://openalex.org/I126345244"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Computer Science Faculty Publications and Presentations","raw_type":"text"}],"best_oa_location":{"id":"doi:10.1145/3674626","is_oa":true,"landing_page_url":"http://dx.doi.org/10.1145/3674626","pdf_url":null,"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":[],"awards":[{"id":"https://openalex.org/G1684710240","display_name":null,"funder_award_id":"2006535","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G5028778537","display_name":"REU Site: Research Experience for undergraduates in Programming Languages (REPL)","funder_award_id":"2244494","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G7010863239","display_name":null,"funder_award_id":"CCF-2006535, CNS-2244494","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G848032724","display_name":null,"funder_award_id":"Science","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G895001607","display_name":null,"funder_award_id":"Grant","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"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":46,"referenced_works":["https://openalex.org/W34814984","https://openalex.org/W1559686260","https://openalex.org/W1982529770","https://openalex.org/W1987927249","https://openalex.org/W2004843654","https://openalex.org/W2009332552","https://openalex.org/W2017274604","https://openalex.org/W2025581658","https://openalex.org/W2030663607","https://openalex.org/W2035636826","https://openalex.org/W2036265926","https://openalex.org/W2043869213","https://openalex.org/W2046280690","https://openalex.org/W2058102230","https://openalex.org/W2073629816","https://openalex.org/W2088030260","https://openalex.org/W2097448496","https://openalex.org/W2098037505","https://openalex.org/W2098645109","https://openalex.org/W2105045857","https://openalex.org/W2135037829","https://openalex.org/W2573436692","https://openalex.org/W2615175639","https://openalex.org/W2885866498","https://openalex.org/W2895928777","https://openalex.org/W2901454403","https://openalex.org/W2909046946","https://openalex.org/W2927734285","https://openalex.org/W2954535803","https://openalex.org/W2966669184","https://openalex.org/W2991260502","https://openalex.org/W2995074506","https://openalex.org/W3037295748","https://openalex.org/W3046859753","https://openalex.org/W3047503662","https://openalex.org/W3101726082","https://openalex.org/W3115656330","https://openalex.org/W3135839603","https://openalex.org/W3139303876","https://openalex.org/W3173976881","https://openalex.org/W3195167056","https://openalex.org/W3207402727","https://openalex.org/W4206229704","https://openalex.org/W4293812585","https://openalex.org/W6911465496","https://openalex.org/W7139033639"],"related_works":["https://openalex.org/W778229461","https://openalex.org/W2090759054","https://openalex.org/W60003963","https://openalex.org/W4241924437","https://openalex.org/W3182911633","https://openalex.org/W1966091859","https://openalex.org/W2018501482","https://openalex.org/W1529605599","https://openalex.org/W2104819922","https://openalex.org/W27609869"],"abstract_inverted_index":{"Lazy":[0],"evaluation":[1],"is":[2,19],"a":[3,50,85,133],"powerful":[4],"tool":[5],"that":[6,54,105],"enables":[7,142],"better":[8,12],"compositionality":[9],"and":[10,98,109,116,145,150],"potentially":[11],"performance":[13],"in":[14],"functional":[15],"programming,":[16],"but":[17],"it":[18],"challenging":[20],"to":[21,38,84],"analyze":[22],"its":[23],"computation":[24,61],"cost.":[25],"Existing":[26],"works":[27],"either":[28],"require":[29],"manually":[30],"annotating":[31],"sharing,":[32],"or":[33],"rely":[34],"on":[35,68],"separation":[36],"logic":[37],"reason":[39],"about":[40,59,148],"heaps":[41],"of":[42,63,76,87,136],"mutable":[43],"cells.":[44],"In":[45],"this":[46],"paper,":[47],"we":[48,79],"propose":[49,128],"bidirectional":[51],"demand":[52,82,154],"semantics":[53,83],"allows":[55],"for":[56],"extrinsic":[57],"reasoning":[58,147],"the":[60,74,81,99,106,110,119,129,137,153],"cost":[62],"lazy":[64],"programs":[65],"without":[66],"relying":[67],"special":[69],"program":[70],"logics.":[71],"To":[72],"show":[73],"effectiveness":[75],"our":[77],"approach,":[78],"apply":[80],"variety":[86],"case":[88],"studies":[89],"including":[90],"insertion":[91],"sort,":[92,94],"selection":[93],"Okasaki\u2019s":[95],"banker\u2019s":[96,107],"queue,":[97],"implicit":[100,111],"queue.":[101],"We":[102,126],"formally":[103],"prove":[104],"queue":[108,112],"are":[113],"both":[114],"amortized":[115],"persistent":[117],"using":[118],"Rocq":[120],"Prover":[121],"(formerly":[122],"known":[123],"as":[124],"Coq).":[125],"also":[127],"reverse":[130],"physicist\u2019s":[131,139],"method,":[132,140],"novel":[134],"variant":[135],"classical":[138],"which":[141],"mechanized,":[143],"modular":[144],"compositional":[146],"amortization":[149],"persistence":[151],"with":[152],"semantics.":[155]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":1}],"updated_date":"2026-04-16T08:26:57.006410","created_date":"2024-06-26T00:00:00"}
