- プログラミング言語 Rust
255 :デフォルトの名無しさん[sage]:2015/04/24(金) 22:34:58.83 ID:w/TzYGT8 - 特殊事例じゃなくて表現方法の1つじゃないの?
例えばhaskellの直和型で可能でenumじゃ無理なことって何がある? 面白い使い方って色々とサポートが必要でしょ?特にメモリ周りで。 例えばリストだったらenum List<T> { Nil, Cons(T, Box<List<T>>)}って面倒だったり、 コンストラクタを関数として扱おうとするなら部分評価時のクロージャを誰が保持するのか利用者が注意しなくちゃならない。 そういう細々としたことをGCや遅延評価で隠せない、隠さないのがいいところでもあるんだから。 オーバーヘッド無しにもっと便利にできるよ!っていうなら取り入れられるよ多分。 低レベルな分野で型推論とか自動メモリ管理とか入れようとしたらどうなるの?っていう実験やってるようなもんだし。
|
|