> remLookupFwd :: (ReVars m t) => SimplRe t -> ReM m t (ReInfo t)
> remLookupFwd re
>   = do fwd <- gets resFwdMap
> --       let { Just reinfo = M.lookup fwd re }                    --
PROBLEM
>        reinfo <- liftMaybe $ M.lookup re fwd                      --
PROBLEM
>        return reinfo
>
> liftMaybe :: Monad m => Maybe a -> m a
> liftMaybe Nothing = fail "Nothing"
> liftMaybe (Just x) = return x

I made two changes:

1. You had the arguments to M.lookup backwards.
2. lookup does not return any generalized Monad, just Maybe (I think that
should be changed). I added the simple liftMaybe function to convert the
Maybe result into something that will work with your state monad.

Michael
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to