2025-04-01 帰りの新幹線 / bool の Ord
東京。帰り。新幹線。
Rust の bool が Ord を実装していて assert!(false < true)
だった。 false
と true
を数値にすると 0
と 1
に対応してその順序関係 (0 < 1
) と矛盾しないから、とかいろいろ出てくる。なぜ false
が 0
なのかを調べると C 言語などとの互換性やブール代数と整数演算の一致などが出てくる。だから何という話ではあるけどいろいろ理由があって面白い。
今日のコミット。
- nom-ics 1 commit