Ich weiß, dass es den Back-Pipe-Operator (<|)
gibt, auf den in mehreren anderen SO-Antworten verwiesen wird. Aber das funktioniert nicht gut, wenn es mit den Forward Pipes (|>)
kombiniert wird, was bei der Verkettung üblich ist. Ich suche jedoch nach verwandten Optionen. Gibt es eine eingebaute Version der folgenden Funktionsdefinition? Oder ist das eine schlechte / gefährliche Praxis?
Es gibt einige Haskell-Funktionen, wie das optionale Infixing mit Backticks und Abschnitte , die in F # nicht verfügbar sind. Das macht bestimmte Konstrukte ein wenig ausführlicher.
Normalerweise würde ich einfach eine Pipe mit Funktionen wie oben beschrieben schreiben:
%Vor% Dies ist meiner Meinung nach viel lesbarer. Wenn ich zum Beispiel Seq.filter ^% (>) 2
verwende, würde ich intuitiv lesen , was "alle Werte größer als 2" bedeutet, aber das ist nicht das, was es tut:
Wenn Sie den Leser des Codes im Zweifel darüber lassen, was der Code tut, haben Sie gerade alle weniger produktiv gemacht. Die Verwendung von Seq.filter (fun x -> x < 2)
kann ausführlicher aussehen, ist aber für den Leser eindeutig.
Tags und Links f#