[<<][meta_siso][>>][..]
Mon Aug 17 23:01:28 EDT 2015

Int -> m t

What about this:

   s -> (s -> m (s, t)) -> (Int -> m t)

Making the result a function leaves many things open.  The Eval
semantics would be clear.  The Code semantics could feed in a dummy
index.

The important thing is that :: Int -> t
is a meta-object that can be transformed further.  A code generator, not code.

Essentially it is the representation that fills this in however it
needs.


The question is then which one of these return types:

   Int -> m t
   m (Int -> t)


Latter is more difficult to handle for instance of (,).

Former seems like the right thing for now.




[Reply][About]
[<<][meta_siso][>>][..]