“…Then, a value is unwrapped using the library function fromDyn which performs a cast, where the required type is specified by the context in which it is unwrapped: inc :: Maybe (Int → Int) inc = fromDyn incDyn Clean, on the other hand, has a more rich and mature dynamic typing system that is built in; it adopted ML's support for monomorphism (Abadi et al, 1991;Pil, 1997) and polymorphism (Abadi et al, 1994;Leroy and Mauny, 1993). Having such an extensive dynamic typing system does not only improve orthogonality with the static typing system (Van Noort et al, 2010), but also has important applications (Plasmeijer and Van Weelden, 2005;Plasmeijer et al, 2011). In Clean, we wrap a value, for example the polymorphic identity function, in a dynamic by using the corresponding keyword:…”