La programación declarativa se basa en la idea de utilizar un cierto tipo de lógica como lenguaje de programación. Esto incluye tanto la programación lógica (o relacional, que usa un lenguaje clausal para programar y el principio de resolución como mecanismo de ejecución) como la funcional (que usa el lenguaje de las funciones matemáticas y la reducción de expresiones como mecanismo computacional).
Este libro aspira a desarrollar una presentación básica completa del paradigma de la programación lógica. Así, aunque se dedica una gran atención a los conceptos de base y se proporciona para ellos una formación en amplitud no exenta de profundidad, también se concede gran importancia a las aplicaciones prácticas.
Concretamos el objetivo anterior en una serie de objetivos más específicos, que describimos a continuación:
- Entender los fundamentos teóricos que sustentan el paradigma de programación lógica (y p o r extensión el de la programación declarativa).
- Proporcionar una perspectiva histórica de la programación lógica, sus motivaciones, sus ventajas y sus defectos (en particular, en comparación con el estilo de programación imperativo).
- Mostrar que es posible caracterizar diferentes subconjuntos de la lógica para los que existen métodos eficientes de deducción automática y comprender que dichos subconjuntos pueden armarse como un lenguaje de programación.
- Introducir conceptos sobre la teoría de los lenguajes de programación que son difíciles de abordar cuando se emplean otros paradigmas. Por ejemplo: el concepto de lenguaje de programación como sistema formal; la necesidad e importante utilidad práctica de una definición semántica formal para los lenguajes de programación, etc.
- Entender los mecanismos computacionales asociados a un lenguaje programación lógica y controlar los mecanismos de deducción correspondientes, aprendiendo a combinar corrección con eficiencia.
- Presentar los distintos métodos, técnicas y herramientas para el desarrollo de aplicaciones mediante un lenguaje de programación lógica.
Contenido:
1.- Una panorámica de la programación declarativa.
I. FUNDAMENTOS.
2.- Sistemas formales, lógica y lenguajes de programación.
3.- De la demostración automática a la programación lógica (I): introducción y métodos semánticos.
4.- De la demostración automática a la programación lógica (II): el principio de resolución de Robinson.
3.- De la demostración automática a la programación lógica (I): introducción y métodos semánticos.
4.- De la demostración automática a la programación lógica (II): el principio de resolución de Robinson.
II. PROGRAMACIÓN LÓGICA.
5.- Programación lógica.
6.- El lenguaje Prolog: introducción.
7.- El lenguaje Prolog: aspectos avanzados.
6.- El lenguaje Prolog: introducción.
7.- El lenguaje Prolog: aspectos avanzados.
III. APLICACIONES DE LA PROGRAMACIÓN LÓGICA.
8.- Representación del conocimiento.
9.- Resolución de problemas.
10.- Programación lógica y tecnología software rigurosa.
9.- Resolución de problemas.
10.- Programación lógica y tecnología software rigurosa.
No hay comentarios:
Publicar un comentario