But it also includes other sets for which you know all the possible values at compile time, such as choices on a menu, operation codes, and command line flags.
Or states of a state machine (like TCP connection status, or user-to-user relationship status).