However, that feature just hasn't made it to the top of my priorities
yet... Sorry :(
No worries at all! If there's anything that I can help regarding this feature, let me know. It looks like the representation of a type right now consists of a lower bound and an upper bound, and probably this feature will require changing the representation, correct?
When I've had this situation, as a workaround, I've just made a
function that returns a fresh-type-variable with all of the supported
base types and maybe some constructed types. It's... not great.
My question is, say, I want to disallow a function, a list of functions, a list of list of functions, a list of list of list of functions, and so on. Of course, I can express things positively: it's an int or bool or listof... what? A list of fresh-type-variable runs a risk of choosing function type. So I could do a listof (int or bool or listof ...) for another level, and keep increasing levels. Is this what you have in mind?