Type systems |
---|
General concepts |
Major categories |
|
Minor categories |
Gradual typing is a type system that lies inbetween static typing and in dynamic typing. Some variables and expressions may be given types and the correctness of the typing is checked at compile time (which is static typing) and some expressions may be left untyped and eventual type errors are reported at runtime (which is dynamic typing).
Gradual typing allows software developers to choose either type paradigm as appropriate, from within a single language.[1] In many cases gradual typing is added to an existing dynamic language,[2] creating a derived language allowing but not requiring static typing to be used. In some cases a language uses gradual typing from the start.