Un
lenguaje de programación es
dinámicamente tipado si una misma variable puede tomar valores de distinto tipo en distintos momentos. La mayoría de lenguajes de tipado dinámico son
lenguajes interpretados, como
Python o
Ruby. Un lenguaje que no es dinámicamente tipado se dice que es de
tipado estático, o estáticamente tipado. Esta separación se suele confundir con la diferencia entre
lenguajes fuertemente tipados y lenguajes débilmente o no tipados. Esta característica estuvo en el lenguaje de programación "SmallTalk"