>>> fromMaybe 2 (sNothing :: SMaybe Integer) 2 :: SInteger >>> fromMaybe 2 (sJust 5 :: SMaybe Integer) 5 :: SInteger >>> prove $ \x -> fromMaybe x (sNothing :: SMaybe Integer) .== x Q.E.D. >>> prove $ \x -> fromMaybe (x+1) (sJust x :: SMaybe Integer) .== x Q.E.D.