Fri Jul 31 15:52:01 CEST 2009

linear data structures vs. dataflow communication channels

A linear data structure can be consumed only once.  This seems
suspiciously similar to threads communicating over synchronous
channels: one read per write.

Combine this with Forth (stack languages) as a vehicle for linear data
structures it should be not too far from a very nice morphism between
linear forth + communicating processes.

Damn I need to write this down formally.

The hint is:

    delimited continuations = tasks

    such are the link between data structure cursors (data) and
    traversal routines (code).  essentially: the shift/reset can turn
    the code into a data structure (= a piece of the return stack).

So when you start thinking in terms of: the data structure _is_ the
traversal, it can be made to disappear.

Essentially: datastructures are future computations.