ich die chessie Bibliothek von Hilfsfunktionen bin mit ROP zu tun (entweder Monade) https://github.com/fsprojects/Chessie/blob/master/src/Chessie/ErrorHandling.fsF # entweder Monade (ROP) zu komponieren Funktion mit zwei Parametern
aber ich bin nicht sicher, wie kurz die folgenden zusammen drei Funktionen zusammen. Wobei twoInputFunc
nur ausgewertet werden sollte, wenn func1 und func2 erfolgreich sind.
val func1 : int -> Result<Tp1, 'a>
val func2 : string -> Result<Tp2, 'a>
val twoInputFunc : par1:Tp1 -> Tpar2:Tp2 -> Result<Ta,'a>
Ich denke, Chessie schön für Dinge wie Eingabe arbeitet Handhabung, wo man wirklich durch eine Folge gehen müssen Operationen Parsing. Allerdings macht es Ihren Code hässliches, wenn Sie es für zu viele Dinge verwenden - es gibt eine heikle Balance, aber manchmal gewöhnliche Ausnahmen verwenden könnten nur einfacher sein (wie Sie genau diese Art der Sache zu vermeiden). Es ist schwer ohne ein konkretes Beispiel zu sagen, aber es ist gut, nicht zu religiös zu sein :-). –