HaskellにおけるArrow型クラスの基礎概念

Arrow型クラスの定義 class Category a => Arrow a where transform :: (input -> output) -> a input output primary :: a input output -> a (input, extra) (output, extra) primary = (||| identity) auxiliary :: a input output -> a (extra, input) (extra, output) auxiliary = (identity |||) (|||) :: a input output -> a input2 o ...

6月9日 21:29 投稿