eholk/harlan

Kernels should be able to grow or shrink input

Opened this issue · 1 comments

If effect, we need an efficient way to do concatMap.

One way I've been considering is changing out underlying vector data structure to be a rope. This should support efficient concatenation, but may also have an unacceptable performance penalty for straightforward iteration cases.

It's also possible to implement ropes as an ADT and some associated libraries, perhaps with a new kernel macro to enable easy kerneling over ropes. To make this really useful, we'll want polymorphism for ADTs.