0% encontró este documento útil (0 votos)
170 vistas3 páginas

Introducción a la Programación Declarativa

Este documento describe tres paradigmas de programación declarativa: programación lógica, que se basa en predicados y unificación de términos; programación funcional, que usa funciones matemáticas sin efectos secundarios; y programación declarativa en general, que expresa la lógica de un programa sin describir el flujo de control. Se proporcionan ejemplos de lenguajes como Prolog, Haskell y SQL.

Cargado por

alejandro
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
170 vistas3 páginas

Introducción a la Programación Declarativa

Este documento describe tres paradigmas de programación declarativa: programación lógica, que se basa en predicados y unificación de términos; programación funcional, que usa funciones matemáticas sin efectos secundarios; y programación declarativa en general, que expresa la lógica de un programa sin describir el flujo de control. Se proporcionan ejemplos de lenguajes como Prolog, Haskell y SQL.

Cargado por

alejandro
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Programación Declarativa

La programación declarativa se define a menudo como cualquier estilo de programación que no sea
imperativo. Varias otras definiciones comunes intentan definirlo simplemente contrastándolo con la
programación imperativa.
La programación declarativa es en la actualidad, el paradigma dominante de un conjunto de
dominios diversos y extensivos como: bases de datos, plantillas y gestión de configuración.
En informática, la programación declarativa es un paradigma de programación, un estilo de
construcción de la estructura y los elementos de los programas de computadora, que expresa la
lógica de una computación sin describir su flujo de control.
Los lenguajes declarativos comunes incluyen los de los lenguajes de consulta de bases de datos (por
ejemplo, SQL, XQuery), expresiones regulares, programación lógica, programación funcional y
sistemas de gestión de configuración.

Características de la programación declarativa


 Expresividad: Muestra con claridad el signifcado de la progrmacion.
 Extensible(regla del 10%-90%):

Programación Lógica
La programación lógica es un tipo de paradigmas de programación dentro del paradigma
de programación declarativa. El resto de los subparadigmas de programación dentro de la
programación declarativa son: programación funcional, programación con restricciones,
programas DSL (de dominio específico) e híbridos. La programación funcional se basa en
el concepto de función (que no es más que una evolución de los predicados), de corte más
matemático. La programación lógica gira en torno al concepto de predicado, o relación
entre elementos.
Características de la programación lógica:
 Unificación de términos.
 Mecanismos de inferencia automática.
 Recursión como estructura de control básica.
 Visión lógica de la computación.
Lenguajes en donde se emplean la programación lógica:

Los siguientes son algunos de los lenguajes de programación que emplean como
paradigma la programación lógica.

 Prolog
 Mercury
 PALs
 Actor Prolog
 SequenceL
 Datalog (Logic Programming in Python)

Ejemplo de un programa en programación lógica en el lenguaje de programación


“Prolog”:
:- use_module(library(http/thread_httpd)).
:- use_module(library(http/http_dispatch)).
:- http_handler(root(hello_word), say_hi, []).
Server (port) :-
http_server(http_dispatch, [port(Port)]).
Say_hi(_resquest) :-
format(‘content-tipe: text/plain~n~n’),
format(‘hello world!~n’).

Programación Funcional
La programación funcional es un paradigma de programación declarativa basado en el uso de
verdaderas funciones matemáticas. En este estilo de programación las funciones son ciudadanas de
primera clase, porque sus expresiones pueden ser asignadas a variables como se haría con cualquier
otro valor; además de que pueden crearse funciones de orden superior.

Características de la programación funcional


 Carencia de efectos colaterales
 no existencia de asignaciones de variables y la falta de construcciones estructuradas como
la secuencia o la iteración (recursividad)
 Existen dos grandes categorías de lenguajes funcionales: los funcionales puros y los
híbridos
 Funciones de datos primitivos
 Definición y evaluación de funciones
 Programación declarativa

Lenguajes donde se emplean la programación funcional:


 LISP.
 ML.
 Haskell.
 OCaml.
 F#
 Erlang.
 Clojure.
 Scala.
Ejemplo de un programa en programación lógica en el lenguaje de programación
“Java”:
Con la llegada de la versión 8 de Java y del uso de las expresiones Lambda, un nuevo
paradigma se ha incorporado a la programación con Java. El nuevo paradigma es lo que se
denomina Programación Funcional.
boolean found = false;
for(String city: cities)
{
if(city.equals("Chicago"))
{
found = true;
break;
}
}
System.out.println("Found chicago?:" + found);

También podría gustarte