Tuesday 5 May 2015

Streams à la carte: Extensible Pipelines with Object Algebras

The final version of our ECOOP15 paper for extensible streams is up!


We address extensibility shortcomings in libraries for lazy-streaming queries with a new design. 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.

In biboudis/streamalg you can examine closely how a stream library can be extended in multiple ways. The repository contains all stream implementations discussed in the paper alongside with benchmarks and tests. This is a joint work with Nick Palladinos (@NickPalladinos), George Fourtounis (@gf0ur) and Yannis Smaragdakis (@YSmaragdakis).

No comments:

Post a Comment