Existen diferentes tipos de lenguajes de programación, incluyendo lenguajes de máquina, de bajo nivel y de alto nivel. Los lenguajes de máquina son entendidos directamente por las computadoras pero son difíciles de usar, mientras que los lenguajes de alto nivel son más fáciles de usar e independientes de la máquina pero requieren de compiladores o intérpretes. Los lenguajes también se clasifican como imperativos, declarativos, orientados a objetos, orientados al problema y naturales.