{"id":"https://openalex.org/W4307886652","doi":"https://doi.org/10.1145/3563291","title":"Parsing randomness","display_name":"Parsing randomness","publication_year":2022,"publication_date":"2022-10-31","ids":{"openalex":"https://openalex.org/W4307886652","doi":"https://doi.org/10.1145/3563291"},"language":"en","primary_location":{"id":"doi:10.1145/3563291","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563291","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563291","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/3563291","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5079995663","display_name":"Harrison Goldstein","orcid":"https://orcid.org/0000-0001-9631-1169"},"institutions":[{"id":"https://openalex.org/I36788626","display_name":"California University of Pennsylvania","ror":"https://ror.org/01spssf70","country_code":"US","type":"education","lineage":["https://openalex.org/I36788626"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Harrison Goldstein","raw_affiliation_strings":["University of Pennsylvania, USA"],"affiliations":[{"raw_affiliation_string":"University of Pennsylvania, USA","institution_ids":["https://openalex.org/I36788626"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5085361253","display_name":"Benjamin C. Pierce","orcid":"https://orcid.org/0000-0001-7839-1636"},"institutions":[{"id":"https://openalex.org/I36788626","display_name":"California University of Pennsylvania","ror":"https://ror.org/01spssf70","country_code":"US","type":"education","lineage":["https://openalex.org/I36788626"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Benjamin C. Pierce","raw_affiliation_strings":["University of Pennsylvania, USA"],"affiliations":[{"raw_affiliation_string":"University of Pennsylvania, USA","institution_ids":["https://openalex.org/I36788626"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5079995663"],"corresponding_institution_ids":["https://openalex.org/I36788626"],"apc_list":null,"apc_paid":null,"fwci":1.3882,"has_fulltext":true,"cited_by_count":11,"citation_normalized_percentile":{"value":0.84474875,"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":"89","last_page":"113"},"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.9977999925613403,"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.9977999925613403,"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/T11269","display_name":"Algorithms and Data Compression","score":0.9947999715805054,"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.9865999817848206,"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.8388564586639404},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.8046398758888245},{"id":"https://openalex.org/keywords/generator","display_name":"Generator (circuit theory)","score":0.7393516302108765},{"id":"https://openalex.org/keywords/randomness","display_name":"Randomness","score":0.6812698841094971},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5415165424346924},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.49709656834602356},{"id":"https://openalex.org/keywords/perspective","display_name":"Perspective (graphical)","score":0.43620383739471436},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.35092952847480774},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.11932212114334106},{"id":"https://openalex.org/keywords/power","display_name":"Power (physics)","score":0.06973496079444885}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8388564586639404},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.8046398758888245},{"id":"https://openalex.org/C2780992000","wikidata":"https://www.wikidata.org/wiki/Q17016113","display_name":"Generator (circuit theory)","level":3,"score":0.7393516302108765},{"id":"https://openalex.org/C125112378","wikidata":"https://www.wikidata.org/wiki/Q176640","display_name":"Randomness","level":2,"score":0.6812698841094971},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5415165424346924},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.49709656834602356},{"id":"https://openalex.org/C12713177","wikidata":"https://www.wikidata.org/wiki/Q1900281","display_name":"Perspective (graphical)","level":2,"score":0.43620383739471436},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.35092952847480774},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.11932212114334106},{"id":"https://openalex.org/C163258240","wikidata":"https://www.wikidata.org/wiki/Q25342","display_name":"Power (physics)","level":2,"score":0.06973496079444885},{"id":"https://openalex.org/C105795698","wikidata":"https://www.wikidata.org/wiki/Q12483","display_name":"Statistics","level":1,"score":0.0},{"id":"https://openalex.org/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","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}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3563291","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563291","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563291","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"}],"best_oa_location":{"id":"doi:10.1145/3563291","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563291","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563291","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/G2090296422","display_name":null,"funder_award_id":"1421243","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G6080364906","display_name":null,"funder_award_id":"1521523","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"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320309370","display_name":"University of Pennsylvania","ror":"https://ror.org/00b30xv10"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4307886652.pdf","grobid_xml":"https://content.openalex.org/works/W4307886652.grobid-xml"},"referenced_works_count":15,"referenced_works":["https://openalex.org/W2123835026","https://openalex.org/W2156429182","https://openalex.org/W2278624804","https://openalex.org/W2476059279","https://openalex.org/W2481213860","https://openalex.org/W2583649498","https://openalex.org/W2734788368","https://openalex.org/W2952047627","https://openalex.org/W2990912491","https://openalex.org/W3005412812","https://openalex.org/W3090526726","https://openalex.org/W4238083723","https://openalex.org/W4244488020","https://openalex.org/W6811215404","https://openalex.org/W6969194371"],"related_works":["https://openalex.org/W2070147537","https://openalex.org/W2026046761","https://openalex.org/W4235735989","https://openalex.org/W2467097043","https://openalex.org/W1998962249","https://openalex.org/W2474495446","https://openalex.org/W1512248002","https://openalex.org/W2049360920","https://openalex.org/W2171794906","https://openalex.org/W2139865158"],"abstract_inverted_index":{"Random":[0],"data":[1,19,133],"generators":[2,16,73,96],"can":[3,83],"be":[4,84],"thought":[5],"of":[6,9,11,47,101,109,119],"as":[7],"parsers":[8],"streams":[10],"randomness.":[12],"This":[13,124],"perspective":[14],"on":[15,44],"for":[17,131],"random":[18],"structures":[20,134],"is":[21],"established":[22],"folklore":[23],"in":[24],"the":[25,45,65,68,105,117],"programming":[26],"languages":[27],"community,":[28],"but":[29],"it":[30],"has":[31],"never":[32],"been":[33,39],"formalized,":[34],"nor":[35],"have":[36],"its":[37],"consequences":[38],"deeply":[40],"explored.":[41],"We":[42],"build":[43],"idea":[46],"freer":[48],"monads":[49],"to":[50,76,104,115,127],"develop":[51],"free":[52],"generators,":[53],"which":[54],"unify":[55],"parsing":[56],"and":[57],"generation":[58],"using":[59],"a":[60,77,80,87,90,99,120,128],"common":[61],"structure":[62],"that":[63,79],"makes":[64],"relationship":[66],"between":[67],"two":[69],"concepts":[70],"precise.":[71],"Free":[72,95],"lead":[74],"naturally":[75],"proof":[78],"monadic":[81],"generator":[82,122],"factored":[85],"into":[86],"parser":[88],"plus":[89],"distribution":[91],"over":[92],"choice":[93],"sequences.":[94],"also":[97],"support":[98],"notion":[100],"derivative,":[102],"analogous":[103],"familiar":[106],"Brzozowski":[107],"derivatives":[108],"formal":[110],"languages,":[111],"allowing":[112],"analysis":[113],"tools":[114],"\"preview\"":[116],"effect":[118],"particular":[121],"choice.":[123],"gives":[125],"rise":[126],"novel":[129],"algorithm":[130],"generating":[132],"satisfying":[135],"user-specified":[136],"preconditions.":[137]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":3}],"updated_date":"2026-04-11T08:14:18.477133","created_date":"2022-11-06T00:00:00"}
