想象一下,我有一个数据类型Person。 data Person = Person String Person
的2人应该是母亲。 showGrandmother :: Person -> Maybe Person
showGrandmother (Person _ mother) = Just mother
只会从人x显示母亲。 我如何显示祖母?
我使用此功能在以下格式的字符串读自然数的列表:[1, 2, 3]: readMaybeIntList :: String -> Maybe [Int]
readMaybeIntList line = case readMaybe line of
Just l -> return l
Nothing -> Nothing
现在它仅适用于整数 - 会是
我正在练习一些哈斯克尔以更好地理解\,case.. of和Maybe。 我有这个小功能,这里应该返回Nothing如果数组是空的,如果Just y y等于阵列XS的头部和Just (tail xs)如果y不等于阵列XS的头。 我将函数的返回类型设置为Maybe a,因为在一种情况下,它应该返回Int,而另一个则返回[Int]。 funct :: Int -> [Int] -> Maybe a
f
我正在尝试创建一个验证输入String -> Maybe Int的函数。我检查输入字符串是否是一个数字,然后检查该数字是否在一个范围内。到目前为止,我有 validateNumber :: String -> Maybe Int
validateNumber n = go $ (readMaybe::String -> Maybe Int) n
where
go (Just
“回报”应该在一些单子的背景下紧裹: *Main> :i return
class Applicative m => Monad (m :: * -> *) where
...
return :: a -> m a
...
-- Defined in ‘GHC.Base’
如果我问GHCI什么“返回Nothing”的类型,它符合是: *Main> :