Int に精度を明示すべきかどうかみたいな話とも関係してるんじゃないかなぁ。 Int は ValueEnumerable であってほしくないけど(概念としての整数は無限の要素を持つので) UInt8 は ValueEnumerable であってほしい。同様に考えると Int32 や UInt32 も ValueEnumerable であってほしいけど、 Int を associated value に持つ enum に ValueEnumerable であってほしいわけじゃなくて、 Int と Int32 の使い分けはやっぱり必要な気がする。Never の bottom 化早く・・・