Traditionally, structs paid a large codegen penalty, as a lot of optimizations and stuff were turned off. It also seemed like the codegen wasn't super smart about passing them around. Maybe that's all changed.
I meant the verbosity of having to create a custom type for each kind of restriction, versus some inline "int n [n > 5]" notation.
I meant the verbosity of having to create a custom type for each kind of restriction, versus some inline "int n [n > 5]" notation.