10.1. Dynamic type
To improve support for dynamic languages, we expect to add a dynamic type whose values can be
assigned to any variable, and whose variables accept values of any type. At the implicit cast
boundaries, values will be wrapped or unwrapped as required. Passing a dynamic value as an argument
to a procedure invocation, will cause a matching overload of the procedure to be selected at
runtime, from the overloads that could match given the non dynamic arguments.