次世代言語18 V Julia 他at TECH次世代言語18 V Julia 他 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト764:デフォルトの名無しさん 19/10/19 08:34:08.79 UzQZhlPI.net >>749 「~でよくね」はその少しを気しない(使い分けない)方の表現では? 765:デフォルトの名無しさん 19/10/19 08:58:11.03 7c9LDTMs.net flatmapがモナドとか言ってる奴何一つ型を分かってない flatmapはモナドのbindを拡張した概念であって、bindそのものじゃない 要するにflatmapが使える時点でモナドじゃない、モナドのような何かだ それをモナドと混同してる時点で論外 766: そいつの話を聞く必要はない 767: 19/10/19 09:36:17 g/FUkYaY.net >要するにflatmapが使える時点でモナドじゃない、モナドのような何かだ 自分がなにもわかってないっていう自己紹介かな 「モナドとして振る舞える」ものはモナドだよ モナドよりできることが多かったとしても 768:デフォルトの名無しさん 19/10/19 10:16:08.33 QmPBAH4r.net モナド警察現るw モナド = bindableでもいいけどbindって何?ってなるだろ flatmapはmapの続きで理解できるからbindって言葉よりも理解しやすい Optional<T>を例にすると mapはOptional<T> -> ( T -> U ) -> Optional<U> Optional<T>とTをUに変換する関数を受け取ってOptional<U>を返す flatmapはOptional<T> -> ( T -> Optional<U> ) -> Optional<U> Optional<T>とTをOptional<U>に変換する関数を受け取ってOptional<U>を返す mapの場合、受け取る関数が( T -> Optional<U> )だと結果がOptional<Optional<U>>になって二重に包まれる flatmapはこういう二重に包まれた結果にならないようmapする機能とネストした型をflattenする機能が合体したもの IOやStateには当てはまらないとかいう奴も居るけど mapだとIO<IO<T>>になるところをflattenしてIO<T>にするのは同じ flattenするルールが包みの種類によって違うだけ 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch