Intuisi jenis opsional seperti Maybe Int
adalah bahwa baik ada ada Int (dengan demikian, ada Nothing
ada) atau bahwa ada beberapa Int; ada sesuatu di sana.
Masuk akal bagi saya bahwa kami memanggil konstruktor tipe untuk kasus "negatif" Nothing
, karena artinya persis seperti itu - bahwa tidak ada di Int
sana. Tetapi mengapa menggunakan kata Hanya dalam kasus di mana penekanannya adalah pada sesuatu yang benar-benar ada di sana ?
Bagi saya, kata "Adil" membawa konotasi bahwa hal yang digambarkannya kurang dari alternatif; kebalikan dari sesuatu yang benar-benar ada di sana; sebagai contoh,
A: Apakah Anda melakukan sesuatu malam ini?
B: Tidak; Saya hanya akan tinggal di dan menonton TV.
A: Apakah Anda menyelidiki suara hantu menyeramkan di sekitar rumah Anda?
B: yeah, ternyata itu sebenarnya hanya burung hantu.
Jelas saya tidak memiliki intuisi apa pun yang dipilih berdasarkan penamaan ini. Apa itu? Karena bagi saya, kata Just berarti kebalikan dari bagaimana kata itu digunakan dalam Maybe
jenisnya.
Maybe
sebagai monad, mereka kemungkinan akan menggunakan return
dan mungkin sesuatu seperti mzero
bukan Nothing
. Ketika Just
digunakan secara langsung, biasanya Maybe
tidak digunakan dalam gaya monadik pada saat itu.
Option
tipe. Para perancang Haskell mungkin merasa bahwa foo x = Just x
"membaca" lebih baik daripada foo x = Some x
. Demikian pula, definisi tersebut data Maybe a = Just a | Nothing
berbunyi cukup baik sebagai " Maybe a
apakah Just a
itu atau itu Nothing
". Some
membaca dengan cukup baik di sana, tetapi None
tidak untuk data Option a = Some a | None
.