エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください
Twitterで共有ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
社内の「強い思想を語るLT会」で使用した資料です。 筆者はHaskellやF#、RustなどResult型ネイティブな... 社内の「強い思想を語るLT会」で使用した資料です。 筆者はHaskellやF#、RustなどResult型ネイティブな言語が好みの人間なので、だいぶ偏った見方になっている点はご了承ください。 はじめに みなさん、Result型(Either型)ってご存知ですか? HaskellやElm、Rust、Kotlin、Swiftなどモダンと言われる言語には大体実装されている型です。 筆者は最近、理想のResult型ライブラリを求めて自作するに至りました。 どんな型? ざっくり表現すると処理に失敗する可能性があることを示す型です。 (Monadとか細かい話は置いておく) 言語やライブラリによって命名などが微妙に異なりますが、TypeScriptで示すとこんな感じになります。 // どれもやってることは同じ type Result<T, U> = Success<T> | Failure<U> //