Paradigmas de Programación: Comparativa entre el Enfoque Imperativo y Declarativo

Clasificado en Informática

Escrito el en español con un tamaño de 2,86 KB

Programación Imperativa: El Enfoque Orientado a la Acción

Los lenguajes imperativos están orientados a la acción, siguiendo el estilo de la máquina de Von Neumann. Es decir, contemplan la ejecución de una acción como una secuencia de operaciones sobre posiciones de memoria.

Los programas escritos con este tipo de lenguajes describen el “cómo” deben obtenerse los resultados de la máquina por medio de órdenes directas a ejecutar sobre esta.

Componentes Fundamentales

Las órdenes siempre son:

  • Sentencias de asignación: Cambian el estado de una variable en memoria por un nuevo valor calculado.
  • Sentencias de control de flujo: Generan cambios en la secuencia de ejecución de las asignaciones.

Características y Notación

Estos lenguajes son considerados eficientes y poseen una notación relativamente cercana al lenguaje natural. Su sintaxis se crea mediante la combinación de palabras en lengua inglesa, identificadores elegidos por el programador y signos comunes (como los operadores aritméticos o los paréntesis).

Ejemplos Históricos de Lenguajes Imperativos

Los ejemplos más notables de lenguajes imperativos a lo largo de la historia son:

  • Fortran (1957)
  • Algol (1960)
  • Pascal (1971)

Programación Declarativa: El Enfoque del “Qué”

La programación declarativa se diferencia de la programación imperativa en que los programas declarativos describen el “qué” se desea obtener.

Todos los lenguajes declarativos se caracterizan por la expresión en un programa de lo que se desea conseguir sin especificar el cómo debe hacerse.

Paradigmas Incluidos en la Programación Declarativa

La notación y el alcance de los programas que se crean con los dos paradigmas que incluye pueden cambiar bastante:

Programación Funcional

Las tareas a realizar se modelan mediante funciones y expresiones, con ausencia de sentencias de procedimientos explícitos.

Ventajas y Desventajas

La programación funcional se consideró ineficiente y complicada desde sus orígenes debido al bajo rendimiento de las primeras implementaciones de los lenguajes. En cambio, ofrece grandes ventajas:

  • Gran expresividad
  • Extensibilidad
  • Facilidad de corrección
  • Falta de efectos laterales

Programación Lógica

Se utilizan hechos y relaciones entre ellos como medio para representar las tareas que se quieren realizar.

Ejemplos de Lenguajes Funcionales

El primer lenguaje de programación funcional fue LISP (McCarthy, 1959), que se basa en el procesamiento de listas. Le siguieron:

  • APL (1962)
  • ISWIM (1966)
  • SCHEME (1975)

Entradas relacionadas: