Thank you @dpsanders I was just wondering if such behavior could be enforced with syntax. I agree with @johnmyleswhite when he says that this enforcement is not something I should be worried about. It is very unlikely that a user will misuse the type with a negative dimension.