I'm slightly surprised that Rust has implemented the Default trait for booleans: https://doc.rust-lang.org/src/core/default.rs.html#205 The default is false, but it feels very arbitrary. Maybe it makes more sense next to integers, where the default value is 0.