次世代言語18 V Julia 他at TECH次世代言語18 V Julia 他 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト769:デフォルトの名無しさん 19/10/19 10:28:11.66 qf1Nei7K.net まあこうなるからモナドを再利用するより再発明した方が話が早い 過去の発明と「混同」すべきでないと警察に指摘されても何も問題ない また俺なんか新発明しちゃいましたか? それだけの話 770:デフォルトの名無しさん 19/10/19 10:33:43.56 UzQZhlPI.net 序盤中盤 >>730 ラストダンジョン >>752-754 771:デフォルトの名無しさん 19/10/19 10:46:34.37 QmPBAH4r.net flatmapは何がうれしいのかというと 例えば 1. ファイルを開いて 2. 内容をテキストとして読んで 3. パースしてJSONに変換する とした場合、 3つとも何らかの要因でエラーが発生しうるから それぞれ結果がエラーが発生するかもしれないというコンテキスト(EitherとかResultと呼ばれるもの)で包まれる open: FilePath -> Result<File, Error> read: File -> Result<Text, Error> parse: Text -> Result<Json, Error> でそれらの処理をつなげた場合に3重に包まれた結果じゃなく 最終的なflattenされたResult<Json, Error>を返すようにするために使うのがflatmap mapはコンテキストを引き継ぎながら中身に関数を適用する flatmapはそれに加えてコンテキストがネストしないようflattenしてくれる それによって合成できる関数のパターンが増えてシンプルに処理を書けるようになる というのが俺の理解 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch