lookup n s e
eve  n       (Cons a d) e k = D n a (ContExpr d k)
     n              Nil e k = cont n Nil e k
     n                a e k = D n a k
emr            (Dict x) e k = R Dict (rev x)
             (Cons x y) e k = R Dict (Cons (rev x) (rev x))
                      a e k = R a
run  D              n a e k = lazy n a e k
     R                a     = a

cont n (Dict v) e (ContCall c k)          = evf n c v e k
     n x        e (ContCall c k)          = evf n c x e k
     n x        e (ContFunc s a k)