Zefram wrote:
It seems to me that switches are a special case of your variable concept, where the restricting type is an enumeration.
It doesn't have to be. A rule could define a switch's valid values as "all real numbers from 0 (default) to 1, inclusive", for instance.

