[notes,feldspar tom@zwizwa.be**20130524223309 Ignore-this: a8195a0356cab1bdd1bffe441ade99f1 ] hunk ./meta.txt 29646 +Entry: What is a stream? +Date: Fri May 24 15:31:45 EDT 2013 + +That is the real question. The problem with the array implementation +is that it is hard to interpret in terms of imperative code. + +So is there a way to keep more true to the definition? + +The main problem seems to be situated when moving from a pure +operation on a stream, to a non-pure stateful operation on the next +element. + +Somehow, something is lost. + +Who owns that context, the state streams? + + + + +Entry: FeldSpar +Date: Fri May 24 15:39:19 EDT 2013 + +From [1]: + + The current version of Feldspar deals only with pure data + processing; although, we have initiated work to extend the + language to encompass control. + +It looks like they avoided feedback state. + +Basic Ideas: + - Symbolic arrays: map f (Indexed l ixf) = Indexed l (f . ixf) + + +Maybe the idea of symbolic arrays can be reused. Currently I rely on +type inference, but to abstract the indexing procedure in the form of +curried functions is a possibility. + +Basically, given an opaque node `s' that is passed to a map function +will return a new opaque node s. The map doesn't need to be forced +until the type is known. Let's give this a try. + +[1] http://journals.cambridge.org/action/displayJournal?jid=JFP + + +Entry: Grid +Date: Fri May 24 15:50:01 EDT 2013 + +What is the basic idea? DSP is about computations on a grid. There +are different ways of constructing grids. What we're interested in is +local context: given a point on a grid, there is a way to get to a +neighbouring point. + +One limitiation is important: the time dimension is special. If the +time dimension is causal (computations never refer to the future) it +is possible to re-arrange the computations in such a way that they +take the form of a state space model. + +The key point is to be able to separate the description of grid +computations and their dependencies, from an actual implementation as +loops. + +It's probably time to take a look again at APL and J. + + + +Entry: Roadmap +Date: Fri May 24 18:19:33 EDT 2013 + +- Generalize reduce to foldmap (accumulation + output streams) + +- Allow for compile-time vectors? Maybe not necessary (just use + constant arrays?) + + + + + + + hunk ./rai/doc/rai.html 37 +