type class Boolean

Ben Franksen ben.franksen at online.de
Tue Dec 22 19:40:21 UTC 2020

Am 22.12.20 um 11:40 schrieb Oleg Grenrus:
> I didn't want to clash with Prelude names. Also in Heyting-generality
> "not" is not correct either. (In general, neg is not involutive).

Yes, obviously. I still think a class Boolean for boolean algebras (with
the usual operators now limited to Bool) would be nice. I don't care too
much whether it has HeytingAlgebra as super class or not, since I have
never had any use for the more general classes. I think I mentioned in
the beginning that my main motivation is convenience. Predicates are
ubiquitous in programming and the desire to combine them using
generalized boolean operators crops up almost everywhere.

It amazes me how the designers of Haskell included this elaborate
hierarchy of types and classes for all sorts of numbers in the standard
libraries, but apparently never thought of generalizing booleans to
predicates (and other boolean algebras).


More information about the Libraries mailing list