Haskell 98报告
顶部|后面|下一个|目录|功能索引
18 也许是公用事业
模块也许( 只是,什么都不是, 从Just,从Maybe,listToMaybe, catMaybes,地图Maybe,
-- ...以及前奏曲的出口 也许(没什么,只是), 也许吧 )其中
只是,就是没有::也许是->布尔 fromJust::也许a->a fromMaybe::a->可能a->a listToMaybe::[a]->可能是 maybeToList::也许a->[a] catMaybes::[也许a]->[可能a] mapMaybe::(a->Maybe b)->[a]->[b]
|
类型构造函数也许 吧定义于前奏曲作为
数据也许a=什么都没有|只是
目的也许 吧类型是提供处理非法或可选值,而不终止程序如果发生错误已使用,但未使用IO错误来自IO(输入输出)monad,这将导致表达式变成monadic。A正确将结果封装在只是; 错误的结果返回为没有什么.
其他操作也许 吧作为单子的一部分提供前奏曲中的课程。
18.1 图书馆也许 吧
模块也许(
只是,什么都不是,
从Just,从Maybe,listToMaybe,
catMaybes,地图Maybe,
——。。。以及前奏曲的出口
也许(没什么,只是),
也许吧
)其中
只是::也许是->布尔
isJust(Just a)=真
isJust Nothing=错误
isNothing::可能是->布尔
isNothing=不。只是
fromJust::也许a->a
fromJust(仅a)=a
fromJust Nothing=error“Maybe.fromJust:Nothing”
fromMaybe::a->可能a->a
fromMaybe d无=d
fromMaybe d(仅a)=a
maybeToList::也许a->[a]
maybeToList Nothing=[]
maybeToList(仅a)=[a]
listToMaybe::[a]->可能是
listToMaybe[]=没有
listToMaybe(a:_)=只是一个
catMaybes::[可能是a]->[a]
catMaybes ms=[m|仅m<-ms]
mapMaybe::(a->Maybe b)->[a]->[b]
mapMaybe f=catMaybes。地图f
Haskell 98报告
顶部|后面|下一个|目录|功能索引
2002年12月