This avoids pitfalls from type checkers having to work with limited information, e.g., a type checker may implicitly assume that only integers are expected where a default value is 1, whereas in reality any float is accepted.