Enforcement of type rules at run time as opposed to compile time. Dynamic typing catches more errors as run-time exceptions than static typing. Tcl, Perl, PHP, Python and Visual Basic are examples of dynamically typed languages. A dynamically typed language may have strong typing or weak typing.