bitwise operations is effectively a SIMD version of bool operations. how one can't see it is beyond me )
should we used computers with 3-state "bits" with Bool's still having two states - we would live in a different world and have a different conversation.
having a different priority for bitwise ops and bool ops makes total sense of course. C didn't do it right enough (a & b == c & d didn't quite work there), swift did it right.
minimal evaluation? you meant short-circuiting or something else? for bitwise ops that wouldn't make much sense and would be rather confusing. for bools it makes total sense and allows to write, say:
a != nil && foo(a!)
which would otherwise crash without short-circuiting. if memory serves me right in the original Pascal this wasn't the case and it was fixed later on in Modula-2.