[developH may fail inside the C Monad
martin.hofmann@uni-bamberg.de**20091201103135] hunk ./src/Igor2/Data/Hypotheses.hs 36
+import Data.Maybe (isJust, fromJust)
hunk ./src/Igor2/Data/Hypotheses.hs 135
-  If one of these calls is not admissible, the function fails.
+  If one of these calls is not admissible, the function fails inside m'
hunk ./src/Igor2/Data/Hypotheses.hs 142
-        C m (Maybe Hypo) -- the resulting hypothese in your favorite Monad
-developH rf h (rfs,calls) = do 
-    let h@(HH open clsd cdps rd) = unsafeModify rf rfs h
-    maybe (return Nothing)(\c -> liftM Just $ updateRating h{callings = c}) $ foldM tryAddCall cdps calls
+        C m Hypo          -- the resulting hypothese in the C Monad
+developH rf h (rfs,calls) =  do 
+    let h'@(HH open clsd cdps rd) = unsafeModify rf rfs h
+    cdps' <-  foldM tryAddCall cdps calls
+    updateRating h'{callings = cdps'}
+--    error $ "CHECK " ++ "\n" ++ (showp h) ++ "\n" ++ (showp h') ++ (showp (cdps' :: (Maybe CallDep)))
+--    maybe (return Nothing)(\c -> liftM Just $ updateRating h{callings = c}) $ foldM tryAddCall cdps calls