L'intuition d'un type en option comme Maybe Int
est que soit il n'y a pas d' Int (donc, il est Nothing
là) ou qu'il ya un certain Int; il y a quelque chose.
Il est logique pour moi que nous appelions le constructeur de type pour le cas "négatif" Nothing
, car cela signifie exactement cela - qu'il n'y a pas Int
là. Mais pourquoi utiliser le mot Juste dans le cas où l'accent est mis sur quelque chose qui existe réellement ?
Pour moi, le mot «juste» porte la connotation que la chose qu'il décrit est moins que l'alternative; le contraire de quelque chose qui est réellement là; par exemple,
A: Tu fais quelque chose ce soir?
B: Non; Je vais juste rester et regarder la télé.
A: Avez-vous enquêté sur les sons fantômes effrayants autour de votre maison?
B: oui, il s'avère que ce n'était en fait qu'un hibou.
De toute évidence, je manque de l'intuition sur laquelle ce choix de nom était basé. Qu'Est-ce que c'est? Parce que pour moi, le mot signifie juste le contraire de la façon dont il est utilisé dans le Maybe
type.
Maybe
comme une monade, ils utiliseraient return
probablement et probablement quelque chose comme mzero
au lieu de Nothing
. Quand Just
est utilisé directement, Maybe
n'est généralement pas utilisé dans un style monadique à ce stade.
Option
type. Les concepteurs de Haskell ont probablement estimé que foo x = Just x
"lire" mieux que foo x = Some x
. De même, la définition se data Maybe a = Just a | Nothing
lit assez bien comme « Maybe a
est soit Just a
ou c'est Nothing
». Some
lit assez bien là-bas, mais None
pas pour data Option a = Some a | None
.