logoalt Hacker News

gizmo686today at 5:42 PM2 repliesview on HN

I'm surprised that trinary logic has not become a standard part of standard libraries yet. Almost every project I have worked on ends up with some form of a yes/no/maybe abstraction.


Replies

hinkleytoday at 5:44 PM

With privacy coming back into vogue, it’s useful to distinguish “we didn’t ask” from “they wouldn’t answer”

For some vector logic the distinction could matter.

Aurornistoday at 6:57 PM

Yes/No/Maybe is a good fit for an enum because “Maybe” carries some specific information.

For more common situations where the yes/no bool is not available yet or should not be considered, constructs like Rust’s Option<bool> are a very good fit. Layering the bool inside of an Option creates intentional handling about the presence or lack of value first before you can work with it.