Есть ли способ определить функцию, подобную следующей в Haskell?Haskell: Нестрогие логические операции
or True True = True
or True undefined = True
or True False = True
or undefined True = True
or undefined False = undefined
or undefined undefined = undefined
or False True = True
or False undefined = undefined
or False False = False
я в настоящее время не имеют прецедента для него (хотя я был бы заинтересован в одном), я просто интересно, если это возможно.
Является ли эта ленивая оценка или ваша интерпретация хакелла трехзначной логикой? –
'undefined' не является значением; это отсутствие ценности. Поэтому вы не можете «проверить, не определено ли это», поэтому вам нужно выбрать: номер 1, 6 и 8 или номер 4, 5, 6; вы не можете иметь обоих. – dflemstr