Ich versuche herauszufinden, welche Definitionen von <
, <=
, >
und >=
für Tupel sind. Mit Blick auf ...Definition von Ord für Tupel
(-1, 3) <= (1, 2) -- True
(2, 3) <= (1, 2) -- False
... sieht aus wie <=
könnte nur <=
auf dem ersten Element jedes Tupel unter Verwendung definiert werden. Doch in diesem Beispiel bei der ersten Elemente sind gleich ...
(1, 3) <= (1, 2) -- False
... bedeutet, dass es nicht nur <=
auf dem ersten Element jedes Tupel sein, da es True
gewesen wäre.
Was ist los? Was ist die Definition von <=
und co on Tupel?
Vielen Dank! Haben Sie irgendwo eine Online-Referenz? (Ich habe also eine bessere Chance, in Zukunft ähnliche Fragen zu stellen, ohne sie hier zu fragen ...) –
@MichalCharemza Sie können [LYAH] (http://learnyouahaskell.com/starting-out) dort nachlesen, wo es heißt Dies gilt für Listen und diskutiert dann die Unterschiede zwischen Listen und Tupeln. Das ist meine beste Referenz dafür (zugegebenermaßen nicht die größte). –
@MichalCharemza Wenn Sie eine Sprachanwalts-Referenz benötigen, lesen Sie den Haskell-Bericht. Es schreibt vor, dass Tupel so arbeiten, als wären sie definiert durch "data (a, b) = (a, b) abgeleitet (..., Ord)" und den ["abgeleiteten" Mechanismus] (https: //www.haskell. org/onlinereport/haskell2010/haskellch11.html # x18-18300011.1) lexikographische Anordnung. – chi