{"id":"https://openalex.org/W3047392318","doi":"https://doi.org/10.1017/s0956796820000192","title":"Faster coroutine pipelines: A reconstruction","display_name":"Faster coroutine pipelines: A reconstruction","publication_year":2020,"publication_date":"2020-01-01","ids":{"openalex":"https://openalex.org/W3047392318","doi":"https://doi.org/10.1017/s0956796820000192","mag":"3047392318"},"language":"en","primary_location":{"id":"doi:10.1017/s0956796820000192","is_oa":false,"landing_page_url":"https://doi.org/10.1017/s0956796820000192","pdf_url":null,"source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://lirias.kuleuven.be/bitstream/123456789/656533/2/pipes_jfp_3.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5080381739","display_name":"Ruben P. Pieters","orcid":"https://orcid.org/0000-0003-0537-9403"},"institutions":[{"id":"https://openalex.org/I99464096","display_name":"KU Leuven","ror":"https://ror.org/05f950310","country_code":"BE","type":"education","lineage":["https://openalex.org/I99464096"]}],"countries":["BE"],"is_corresponding":true,"raw_author_name":"RUBEN P. PIETERS","raw_affiliation_strings":["KU Leuven, Leuven, Belgium, (e-mails:"],"raw_orcid":"https://orcid.org/0000-0003-0537-9403","affiliations":[{"raw_affiliation_string":"KU Leuven, Leuven, Belgium, (e-mails:","institution_ids":["https://openalex.org/I99464096"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5050247934","display_name":"Tom Schrijvers","orcid":"https://orcid.org/0000-0001-8771-5559"},"institutions":[{"id":"https://openalex.org/I99464096","display_name":"KU Leuven","ror":"https://ror.org/05f950310","country_code":"BE","type":"education","lineage":["https://openalex.org/I99464096"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"TOM SCHRIJVERS","raw_affiliation_strings":["KU Leuven, Leuven, Belgium, (e-mails:"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"KU Leuven, Leuven, Belgium, (e-mails:","institution_ids":["https://openalex.org/I99464096"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5080381739"],"corresponding_institution_ids":["https://openalex.org/I99464096"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.11623451,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"30","issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10317","display_name":"Advanced Database Systems and Queries","score":0.9977999925613403,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10317","display_name":"Advanced Database Systems and Queries","score":0.9977999925613403,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T11407","display_name":"Innovative Microfluidic and Catalytic Techniques Innovation","score":0.9927999973297119,"subfield":{"id":"https://openalex.org/subfields/2204","display_name":"Biomedical Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12016","display_name":"Web Data Mining and Analysis","score":0.9891999959945679,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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.9022952318191528},{"id":"https://openalex.org/keywords/encoding","display_name":"Encoding (memory)","score":0.8110151290893555},{"id":"https://openalex.org/keywords/continuation","display_name":"Continuation","score":0.7755430340766907},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.7478426098823547},{"id":"https://openalex.org/keywords/benchmark","display_name":"Benchmark (surveying)","score":0.6141736507415771},{"id":"https://openalex.org/keywords/pipeline-transport","display_name":"Pipeline transport","score":0.5828089714050293},{"id":"https://openalex.org/keywords/recursion","display_name":"Recursion (computer science)","score":0.531389594078064},{"id":"https://openalex.org/keywords/bitstream","display_name":"Bitstream","score":0.4383632242679596},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4325656592845917},{"id":"https://openalex.org/keywords/stream-processing","display_name":"Stream processing","score":0.41541731357574463},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4071428179740906},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.29143935441970825},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.23804524540901184},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.18208879232406616},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.1759296953678131},{"id":"https://openalex.org/keywords/decoding-methods","display_name":"Decoding methods","score":0.12494102120399475}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.9022952318191528},{"id":"https://openalex.org/C125411270","wikidata":"https://www.wikidata.org/wiki/Q18653","display_name":"Encoding (memory)","level":2,"score":0.8110151290893555},{"id":"https://openalex.org/C88626702","wikidata":"https://www.wikidata.org/wiki/Q1128903","display_name":"Continuation","level":2,"score":0.7755430340766907},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7478426098823547},{"id":"https://openalex.org/C185798385","wikidata":"https://www.wikidata.org/wiki/Q1161707","display_name":"Benchmark (surveying)","level":2,"score":0.6141736507415771},{"id":"https://openalex.org/C175309249","wikidata":"https://www.wikidata.org/wiki/Q725864","display_name":"Pipeline transport","level":2,"score":0.5828089714050293},{"id":"https://openalex.org/C168773036","wikidata":"https://www.wikidata.org/wiki/Q264164","display_name":"Recursion (computer science)","level":2,"score":0.531389594078064},{"id":"https://openalex.org/C136695289","wikidata":"https://www.wikidata.org/wiki/Q415568","display_name":"Bitstream","level":3,"score":0.4383632242679596},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4325656592845917},{"id":"https://openalex.org/C107027933","wikidata":"https://www.wikidata.org/wiki/Q2006448","display_name":"Stream processing","level":2,"score":0.41541731357574463},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4071428179740906},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.29143935441970825},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.23804524540901184},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.18208879232406616},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.1759296953678131},{"id":"https://openalex.org/C57273362","wikidata":"https://www.wikidata.org/wiki/Q576722","display_name":"Decoding methods","level":2,"score":0.12494102120399475},{"id":"https://openalex.org/C13280743","wikidata":"https://www.wikidata.org/wiki/Q131089","display_name":"Geodesy","level":1,"score":0.0},{"id":"https://openalex.org/C87717796","wikidata":"https://www.wikidata.org/wiki/Q146326","display_name":"Environmental engineering","level":1,"score":0.0},{"id":"https://openalex.org/C205649164","wikidata":"https://www.wikidata.org/wiki/Q1071","display_name":"Geography","level":0,"score":0.0},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1017/s0956796820000192","is_oa":false,"landing_page_url":"https://doi.org/10.1017/s0956796820000192","pdf_url":null,"source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},{"id":"pmh:oai:lirias2repo.kuleuven.be:123456789/656533","is_oa":true,"landing_page_url":"https://lirias.kuleuven.be/bitstream/123456789/656533/2/pipes_jfp_3.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4306401954","display_name":"Lirias (KU Leuven)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I99464096","host_organization_name":"KU Leuven","host_organization_lineage":["https://openalex.org/I99464096"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Journal Of Functional Programming, vol. 30, Art.No. e22","raw_type":"info:eu-repo/semantics/publishedVersion"}],"best_oa_location":{"id":"pmh:oai:lirias2repo.kuleuven.be:123456789/656533","is_oa":true,"landing_page_url":"https://lirias.kuleuven.be/bitstream/123456789/656533/2/pipes_jfp_3.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4306401954","display_name":"Lirias (KU Leuven)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I99464096","host_organization_name":"KU Leuven","host_organization_lineage":["https://openalex.org/I99464096"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Journal Of Functional Programming, vol. 30, Art.No. e22","raw_type":"info:eu-repo/semantics/publishedVersion"},"sustainable_development_goals":[{"score":0.4699999988079071,"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W84930537","https://openalex.org/W808017860","https://openalex.org/W1480685649","https://openalex.org/W1513579486","https://openalex.org/W1590681881","https://openalex.org/W1590978730","https://openalex.org/W1594912681","https://openalex.org/W1966981171","https://openalex.org/W1971752790","https://openalex.org/W2130267274","https://openalex.org/W2148222209","https://openalex.org/W2149859026","https://openalex.org/W2158778600","https://openalex.org/W2159227002","https://openalex.org/W2162015151","https://openalex.org/W2184230987","https://openalex.org/W2486439025","https://openalex.org/W2562640456","https://openalex.org/W2752454259","https://openalex.org/W2807593962","https://openalex.org/W2889984762","https://openalex.org/W2904427631","https://openalex.org/W3099809655","https://openalex.org/W4235724843"],"related_works":["https://openalex.org/W2801835562","https://openalex.org/W196828063","https://openalex.org/W4247743232","https://openalex.org/W4238447024","https://openalex.org/W1602185604","https://openalex.org/W2911281194","https://openalex.org/W173120711","https://openalex.org/W2572412372","https://openalex.org/W1984438291","https://openalex.org/W1663248305"],"abstract_inverted_index":{"Abstract":[0],"The":[1],"three-continuation":[2,50],"approach":[3],"to":[4,73],"coroutine":[5],"pipelines":[6],"efficiently":[7],"represents":[8],"a":[9,75,79],"large":[10],"number":[11],"of":[12,61],"connected":[13],"components.":[14],"Previous":[15],"work":[16],"in":[17,58,91],"this":[18,21,36,44],"area":[19],"introduces":[20],"alternative":[22],"encoding":[23,37,51,77,90],"but":[24],"does":[25],"not":[26],"shed":[27],"much":[28],"light":[29],"on":[30,53],"the":[31,49,55,59,62,66,89],"underlying":[32],"principles":[33],"for":[34,78],"deriving":[35,48],"from":[38],"its":[39],"specification.":[40],"This":[41],"paper":[42],"gives":[43],"missing":[45],"insight":[46],"by":[47],"based":[52],"eliminating":[54],"mutual":[56],"recursion":[57],"definition":[60],"connect":[63],"operation.":[64],"Using":[65],"same":[67],"derivation":[68],"steps,":[69],"we":[70,87],"are":[71,110],"able":[72],"derive":[74],"similar":[76],"more":[80],"general":[81],"setting,":[82],"namely":[83],"bidirectional":[84],"pipes.":[85],"Additionally,":[86],"evaluate":[88],"an":[92],"advertisement":[93],"analytics":[94],"benchmark":[95],"where":[96],"it":[97],"is":[98],"as":[99,101],"performant":[100],"pipes":[102],",":[103,105,108],"conduit":[104],"and":[106],"streamly":[107],"which":[109],"other":[111],"common":[112],"Haskell":[113],"stream":[114],"processing":[115],"libraries.":[116]},"counts_by_year":[],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
