Los lenguajes de programación están diseñados para describir un conjunto de acciones consecutivas, las cuales un equipo debe ejecutar. Por lo tanto, un lenguaje de programación es un modo práctico en el que podemos dar instrucciones a un equipo. En pocas palabras un lenguaje de programación describe que A CADA instrucción le corresponde UNA acción de procesador.

El lenguaje que utiliza un procesador se denomina «lenguaje máquina«. Se trata de una serie de instrucciones que se llegan al procesador que consisten en una cadena de datos binarios (ceros y unos).  El lenguaje máquina, por ende, no es comprensible, Por tal razón se han desarrollado lenguajes intermediarios comprensibles para el hombre. El código que escribimos se transforma en código máquina para que el procesador logre interpretarlo.

El ensamblador fue el primer lenguaje de programación utilizado. Es muy similar al lenguaje máquina, pero solo los desarrolladores pueden comprenderlo. A pesar de su parecido con lenguaje máquina, depende estrictamente del tipo de procesador utilizado (cada tipo de procesador puede tener su propio lenguaje máquina). Así, un programa desarrollado para un equipo no puede ser «portado» a otro tipo de equipo. El término portabilidad describe la capacidad de usar un programa de software en diferentes tipos de equipos. Para poder utilizar un programa de software escrito en un código ensamblador en otro tipo de equipo, ¡a veces será necesario volver a escribir todo el programa!

Por lo tanto, un lenguaje de programación tiene varias ventajas: es mucho más fácil de comprender que un lenguaje máquina, y permite mayor portabilidad, es decir que puede adaptarse fácilmente para ejecutarse en diferentes tipos de equipos.

Lenguajes de programación imperativos y funcionales

Los lenguajes de programación generalmente se dividen en dos grupos principales en base al procesamiento de sus comandos: lenguajes imperativos y lenguajes funcionales.

Lenguaje de programación imperativo

Un lenguaje imperativo programa por medio de una serie de comandos, agrupados en bloques y compuestos de órdenes condicionales que permiten al programa retornar a un bloque de comandos si se cumple la condición. Fueron los primeros lenguajes de programación que se usaron y hoy todavía muchos lenguajes usan el mismo principio.

Lenguaje de programación funcional

Un lenguaje de programación funcional o lenguaje procedimental, crea programas por medio de funciones, devuelve un nuevo estado de resultado y recibe como entrada el resultado de otras funciones. Cuando una función se invoca a sí misma, se estaría hablando de recursividad.

Interpretación y compilación

Los lenguajes de programación es posible dividirlos en dos categorías: lenguajes interpretados y lenguajes compilados.

Lenguaje interpretado

Un lenguaje de programación debe traducirse para que el procesador pueda comprenderlo. Asi que un programa escrito en un lenguaje interpretado requiere de un programa auxiliar que traduce los comandos de los programas cuando sea necesario.

Lenguaje compilado

Un programa escrito en un lenguaje compilado se traduce por medio de un programa anexo llamado «compilador» que crea un nuevo archivo independiente el cual no necesita ningún otro programa para ejecutarse a sí mismo. Este archivo se llama ejecutable.

Lenguajes intermediarios

Algunos lenguajes pertenecen a ambas categorías (interpretado y compilado) tales como LISP, Java, Python, entre otros. El programa escrito en estos lenguajes en algunos casos puede sufrir una fase de compilación intermediaria.

Algunos ejemplos de lenguajes ampliamente usados:

Lenguaje Principal área de aplicación Compilado/interpretado
ADA Tiempo real Lenguaje compilado
BASIC Programación para fines educativos Lenguaje interpretado
C Programación de sistema Lenguaje compilado
C++ Programación de sistema orientado a objeto Lenguaje compilado
Cobol Administración Lenguaje compilado
Fortran Cálculo Lenguaje compilado
Java Programación orientada a Internet Lenguaje intermediario
MATLAB Cálculos matemáticos Lenguaje interpretado
Cálculos matemáticos Cálculos matemáticos Lenguaje interpretado
LISP Inteligencia artificial Lenguaje intermediario
Pascal Educación Lenguaje compilado
PHP Desarrollo de sitios web dinámicos Lenguaje interpretado
Inteligencia artificial Inteligencia artificial Lenguaje interpretado
Perl Procesamiento de cadenas de caracteres Lenguaje interpretado

 

Si tienes alguna duda o quieres hacer alguna sugerencia déjalo en los comentarios y si te gusto el articulo compártelo ¡Muchas gracias!

Share This