私は演算子を定義する方法について知りたいと思います。演算子がすでにMaybe
でないものがであるHaskellに既に存在し、何も返されない場合は、デフォルト。基本的にはこのような何か:多分合体演算子
let x = a ?? b ?? c ?? 1
(??)
は演算子であり、a, b, c
はすべてMaybe
タイプです。 a, b, c
がすべてNothing
の場合、このコードでは最初の値がJust
または1
であると期待しています。
私は基本的に、C#
や他の言語で見つかるヌル合体演算子と同じ機能を再現しようとしています。
この質問は、 F#(Null Coalescing Operator in F#?)でそれを行う方法を示しており、かなりハッキーです。ハスケルでそれをきちんとやり遂げる方法はありますか?もしそうでなければ、あなたはそれに最も近づくことができますか?
[Hoogle(https://www.haskell.org/hoogle/?hoogle=Maybe+a+-%3E+Maybe+a+-%3E+Maybe+a)がこれを見つけるための優れたツールでありますものの種類。 – AJFarmar