Can i dream that someday D would has an enhancement type system? To do something like this: type T = { int[2..17] | string("default") } type U = { T | None }; or it's a totally bad idea?