エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
コンテキストでの型の操作 Monad型クラス ApplicativeとFunctorの制限 <*>の汎用バージョンのallApp関数の実装 - 計算機科学のブログ
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
コンテキストでの型の操作 Monad型クラス ApplicativeとFunctorの制限 <*>の汎用バージョンのallApp関数の実装 - 計算機科学のブログ
入門Haskellプログラミング (Will Kurt(著)、株式会社クイープ(監修、翻訳)、翔泳社)のUNIT5(コンテキス... 入門Haskellプログラミング (Will Kurt(著)、株式会社クイープ(監修、翻訳)、翔泳社)のUNIT5(コンテキストでの型の操作)、LESSON30(ApplicativeとFunctorの制限)、30.5(練習問題)Q30-2の解答を求めてみる。 コード allApp :: Monad m => m (a -> b) -> m a -> m b allApp f x = f >>= ( \f -> x >>= \x -> return $ f x ) f :: Maybe (Integer -> Integer) f = Just (* 2) main :: IO () main = do print $ allApp f $ Just 5 print $ allApp f Nothing