C#(11以降?><)でもPascalの部分範囲型と同じような事ができなくもない事はわかったけど、範囲チェックとその為のnullチェックが実行時に頻繁に行われまくるので、パフォーマンスを考えたらPascalや(出来うる限り静的に検査されて実行時には不要な検査は行わない)Adaのように多用する使い方は無理かも?><;
(もし実用するとしたら要所要所だけで使って途中の計算は普通の数値型を使うってしないとダメかも?><;)
そして、『安全をチェックしなければならない要所』か『パフォーマンスを優先すべきでチェックを省く場所』なのかを人間が判断すると、Ariane 5の打ち上げ失敗の二の舞になるわけで、だからこそSPARKみたいなものが必要になるわけだね><;
クラスターミッション - Wikipedia
https://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%A9%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%9F%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3
普通に演算子を使って加減乗除するだけでも、右辺と左辺の範囲チェックして、結果の範囲チェックしてって毎回するのでかなり性能悪いはず><;