@@ -22,6 +22,10 @@ fetch x = MkEval (\e => fetchVal e) where {
22 fetchVal ((v, val) :: xs) = if (x == v) then (Just val) else (fetchVal xs);
22 fetchVal ((v, val) :: xs) = if (x == v) then (Just val) else (fetchVal xs);
25+instance Functor Eval where {
26+ fmap f (MkEval g) = MkEval (\e => fmap f (g e));
25instance Applicative Eval where {
29instance Applicative Eval where {
26 pure x = MkEval (\e => Just x);
30 pure x = MkEval (\e => Just x);