Design runtime type tags, coercions, truthiness, dispatch, and error behavior for a dynamically typed language. Implement safe operations over tagged values.