>>> readMaybe "123" :: Maybe Int Just 123
>>> readMaybe "hello" :: Maybe Int Nothing
>>> readMaybe ("123" :: Text) :: Maybe Int Just 123
>>> readMaybe ("hello" :: Text) :: Maybe Int Nothing
>>> readMaybe "123" :: Maybe Int Just 123
>>> readMaybe "hello" :: Maybe Int Nothing@since base-4.6.0.0
>>> readMaybe @Int @Text "123" Just 123 >>> readMaybe @Int @Text "aa" Nothing
>>> greadMaybe "InL Refl" mkSome :: Maybe (Some (Sum ((:~:) Int) ((:~:) Bool))) Just (mkSome (InL Refl))
>>> greadMaybe "L1 Refl" mkSome :: Maybe (Some ((:~:) Int :+: (:~:) Bool)) Just (mkSome (L1 Refl))
>>> greadMaybe "garbage" mkSome :: Maybe (Some ((:~:) Int)) Nothing