ECOOP 2015
Sun 5 - Fri 10 July 2015 Prague, Czech Republic
Fri 10 Jul 2015 11:30 - 12:00 at Bohemia - Abstraction Chair(s): Davide Ancona

Streaming libraries have become ubiquitous in object-oriented languages, with recent offerings in Java, C#, and Scala. All such libraries, however, suffer in terms of extensibility: there is no way to change the semantics of a streaming pipeline (e.g., to fuse filter operators, to perform computations lazily, to log operations) without changes to the library code. Furthermore, in some languages it is not even possible to add new operators (e.g., a zip operator, in addition to the standard map, filter, etc.) without changing the library. We address such extensibility shortcomings with a new design for streaming libraries. The architecture underlying this design borrows heavily from Oliveira and Cook’s object algebra solution to the expression problem, extended with a design that exposes the push/pull character of the iteration, and an encoding of higher-kinded polymorphism. We apply our design to Java and show that the addition of full extensibility is accompanied by high performance, matching or exceeding that of the original, highly-optimized Java streams library.

Fri 10 Jul
Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:00: AbstractionResearch Track at Bohemia
Chair(s): Davide AnconaUniversity of Genova
10:30 - 11:00
A Pattern Calculus for Rule Languages: Expressiveness, Compilation, and Mechanization
Research Track
Avraham ShinnarIBM Research, Jerome SimeonIBM Research, Martin HirzelIBM Research
11:00 - 11:30
Global Sequence Protocol: A Robust Abstraction for Replicated Shared State
Research Track
Sebastian BurckhardtMicrosoft Research, Daan LeijenMicrosoft Research, Jonathan ProtzenkoMicrosoft Research, Manuel FähndrichGoogle
11:30 - 12:00
Streams a la carte: Extensible Pipelines with Object Algebras
Research Track
Aggelos BiboudisUniversity of Athens, Nick PalladinosNessos Information Technologies, SA, George FourtounisUniversity of Athens, Yannis SmaragdakisUniversity of Athens