{"id":"https://openalex.org/W7160246976","doi":"https://doi.org/10.48550/arxiv.2605.02691","title":"Compile-Time Java Stream Fusion via mapMulti","display_name":"Compile-Time Java Stream Fusion via mapMulti","publication_year":2026,"publication_date":"2026-05-04","ids":{"openalex":"https://openalex.org/W7160246976","doi":"https://doi.org/10.48550/arxiv.2605.02691"},"language":null,"primary_location":{"id":"doi:10.48550/arxiv.2605.02691","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2605.02691","pdf_url":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},"type":"preprint","indexed_in":["datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://doi.org/10.48550/arxiv.2605.02691","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5135384294","display_name":"Yegor Bugayenko","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Bugayenko, Yegor","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5134771452","display_name":"Maxim Trunnikov","orcid":"https://orcid.org/0000-0001-8545-4797"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Trunnikov, Maxim","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5135384578","display_name":"Vladimir Zakharov","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Zakharov, Vladimir","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"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.43689998984336853,"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.43689998984336853,"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/T10317","display_name":"Advanced Database Systems and Queries","score":0.2847999930381775,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.0640999972820282,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.7432000041007996},{"id":"https://openalex.org/keywords/pipeline","display_name":"Pipeline (software)","score":0.6913999915122986},{"id":"https://openalex.org/keywords/java-bytecode","display_name":"Java bytecode","score":0.6452000141143799},{"id":"https://openalex.org/keywords/bytecode","display_name":"Bytecode","score":0.5303000211715698},{"id":"https://openalex.org/keywords/stream-processing","display_name":"Stream processing","score":0.42260000109672546},{"id":"https://openalex.org/keywords/abstraction","display_name":"Abstraction","score":0.41130000352859497},{"id":"https://openalex.org/keywords/loop-unrolling","display_name":"Loop unrolling","score":0.3869999945163727},{"id":"https://openalex.org/keywords/java-annotation","display_name":"Java annotation","score":0.37770000100135803}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8633999824523926},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.7432000041007996},{"id":"https://openalex.org/C43521106","wikidata":"https://www.wikidata.org/wiki/Q2165493","display_name":"Pipeline (software)","level":2,"score":0.6913999915122986},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6590999960899353},{"id":"https://openalex.org/C2777472213","wikidata":"https://www.wikidata.org/wiki/Q137496","display_name":"Java bytecode","level":5,"score":0.6452000141143799},{"id":"https://openalex.org/C2779818221","wikidata":"https://www.wikidata.org/wiki/Q837330","display_name":"Bytecode","level":3,"score":0.5303000211715698},{"id":"https://openalex.org/C107027933","wikidata":"https://www.wikidata.org/wiki/Q2006448","display_name":"Stream processing","level":2,"score":0.42260000109672546},{"id":"https://openalex.org/C124304363","wikidata":"https://www.wikidata.org/wiki/Q673661","display_name":"Abstraction","level":2,"score":0.41130000352859497},{"id":"https://openalex.org/C76970557","wikidata":"https://www.wikidata.org/wiki/Q1869750","display_name":"Loop unrolling","level":3,"score":0.3869999945163727},{"id":"https://openalex.org/C168702491","wikidata":"https://www.wikidata.org/wiki/Q567345","display_name":"Java annotation","level":4,"score":0.37770000100135803},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3734999895095825},{"id":"https://openalex.org/C60945770","wikidata":"https://www.wikidata.org/wiki/Q2517517","display_name":"Java Modeling Language","level":5,"score":0.3668000102043152},{"id":"https://openalex.org/C175309249","wikidata":"https://www.wikidata.org/wiki/Q725864","display_name":"Pipeline transport","level":2,"score":0.3433000147342682},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.3292999863624573},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.3190000057220459},{"id":"https://openalex.org/C168773036","wikidata":"https://www.wikidata.org/wiki/Q264164","display_name":"Recursion (computer science)","level":2,"score":0.3181000053882599},{"id":"https://openalex.org/C2778361913","wikidata":"https://www.wikidata.org/wiki/Q7248437","display_name":"Program transformation","level":2,"score":0.3111000061035156},{"id":"https://openalex.org/C15524039","wikidata":"https://www.wikidata.org/wiki/Q865817","display_name":"Java applet","level":3,"score":0.3019999861717224},{"id":"https://openalex.org/C172482141","wikidata":"https://www.wikidata.org/wiki/Q379273","display_name":"Generics in Java","level":5,"score":0.30160000920295715},{"id":"https://openalex.org/C102379954","wikidata":"https://www.wikidata.org/wiki/Q2589940","display_name":"Call graph","level":2,"score":0.2939000129699707},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.28839999437332153},{"id":"https://openalex.org/C89198739","wikidata":"https://www.wikidata.org/wiki/Q3079880","display_name":"Data stream mining","level":2,"score":0.27720001339912415},{"id":"https://openalex.org/C2778484313","wikidata":"https://www.wikidata.org/wiki/Q1172540","display_name":"Data stream","level":2,"score":0.26489999890327454},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.2590000033378601},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.2513999938964844}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.48550/arxiv.2605.02691","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2605.02691","pdf_url":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"Preprint"}],"best_oa_location":{"id":"doi:10.48550/arxiv.2605.02691","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2605.02691","pdf_url":null,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":[],"abstract_inverted_index":{"The":[0],"Java":[1,6,77,118],"Stream":[2],"API,":[3],"introduced":[4],"in":[5,133,157,163],"8,":[7],"makes":[8],"data":[9],"processing":[10],"more":[11],"expressive":[12],"and":[13,108,136,153,160],"concise":[14],"compared":[15],"to":[16,30,70,130,170],"imperative":[17,83],"loops.":[18,84],"However,":[19],"this":[20,46,63,86],"abstraction":[21],"can":[22],"come":[23],"with":[24],"significant":[25],"performance":[26,156],"overhead,":[27],"often":[28],"due":[29],"the":[31,67,171],"creation":[32],"of":[33,99,125,173],"multiple":[34],"intermediate":[35,59],"objects":[36,132],"during":[37],"pipeline":[38],"execution.":[39],"In":[40,85],"functional":[41],"languages":[42],"such":[43],"as":[44,144],"Haskell,":[45],"problem":[47],"is":[48],"addressed":[49],"through":[50],"stream":[51,74,80],"fusion,":[52],"a":[53,95,112],"compile-time":[54],"optimization":[55,75],"that":[56,93],"eliminates":[57],"unnecessary":[58],"structures.":[60],"Inspired":[61],"by":[62,78],"idea,":[64],"Streamliner":[65],"was":[66],"first":[68],"tool":[69],"perform":[71],"ahead-of-time,":[72],"bytecode-to-bytecode":[73],"for":[76],"unrolling":[79,100],"pipelines":[81],"into":[82,102,111],"paper,":[87],"we":[88],"introduce":[89],"an":[90],"open-source":[91],"optimizer":[92,149],"takes":[94],"different":[96],"approach.":[97],"Instead":[98],"streams":[101,143],"loops,":[103],"it":[104,169],"merges":[105],"consecutive":[106],"map()":[107],"filter()":[109],"operations":[110],"single":[113],"mapMulti()":[114],"call,":[115],"available":[116],"since":[117],"16.":[119],"Our":[120],"method":[121],"avoids":[122],"several":[123],"limitations":[124],"Streamliner,":[126],"including":[127],"its":[128,137],"sensitivity":[129],"escaping":[131],"lambda":[134],"expressions":[135],"restrictions":[138],"on":[139,150],"assigning":[140],"or":[141],"passing":[142],"variables.":[145],"We":[146,166],"evaluated":[147],"our":[148],"nine":[151],"benchmarks":[152],"observed":[154],"superior":[155],"two":[158],"cases":[159],"comparable":[161],"results":[162],"most":[164],"others.":[165],"also":[167],"applied":[168],"bytecode":[172],"Apache":[174],"Kafka,":[175],"successfully":[176],"executing":[177],"all":[178],"31,799":[179],"unit":[180],"tests":[181],"without":[182],"failures.":[183]},"counts_by_year":[],"updated_date":"2026-07-28T07:46:37.118299","created_date":"2026-05-06T00:00:00"}
