Інтуїція необов'язкового типу типу Maybe Int
є те, що або немає Int (таким чином, є Nothing
там), або що є якийсь Int; є щось там.
Для мене є сенс, що ми називаємо конструктор типу для "негативного" випадку Nothing
, оскільки це означає саме те - що його там немає Int
. Але навіщо вживати слово Просто у випадку, коли наголос робиться на тому, що насправді є ?
Для мене слово "Просто" містить конотацію, що річ, яку вона описує, є меншою, ніж альтернатива; протилежність чомусь насправді там; наприклад,
A: Ти щось робиш сьогодні ввечері?
Б: Ні; Я просто заставлюсь і дивлюсь телевізор.
A: Ви досліджували моторошні привидні звуки навколо вашого будинку?
Б: так, виявляється, це насправді була просто сова.
Зрозуміло, мені не вистачає будь-якої інтуїції, на якій базувався цей вибір імен. Що це? Тому що для мене слово Just означає протилежне тому, як воно вживається у Maybe
типі.
Maybe
як монаду, вони, швидше за все, використовуватимуть return
і, можливо, щось подібне mzero
замість Nothing
. Якщо Just
використовується безпосередньо, зазвичай Maybe
не використовується в монадійному стилі в той момент.
Option
тип. Дизайнери Haskell, ймовірно, відчували, що foo x = Just x
"читають" краще, ніж foo x = Some x
. Точно так само визначення data Maybe a = Just a | Nothing
читається досить добре як " Maybe a
є Just a
або є Nothing
". Some
там читається досить добре, але None
не для data Option a = Some a | None
.