12
  Vicerrectorado de Profesorado, Titulaciones, Ordenación Académica, Coordinación y Campus.  1 Última actualización:  25 de  julio de 2011 GUÍA DOCENTE DE PROGRAMACIÓN DECLARATIVA Curso 2011-2012

Programación declarativa - GII 2011/2012

Embed Size (px)

DESCRIPTION

Guía docente de la asignatura "Programación declarativa" de 3º del Grado en Ingeniería Informática de la Universidad Rey Juan Carlos

Citation preview

Page 1: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 1/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

1  Última actualización: 25 de  julio de 2011 

GUÍA DOCENTE DE

PROGRAMACIÓN DECLARATIVA

Curso 2011-2012

Page 2: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 2/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

2  Última actualización: 25 de  julio de 2011 

TITULACIÓN: Grado en Ingeniería Informática

GUIA DOCENTE DE LA ASIGNATURA: Programación Declarativa

Profesores: María Teresa González de Lena, Soto Montalvo, Ana Pradera, Juan Manuel Serrano.

Coordinadora de la asignatura: Ana Pradera

I.- Identificación de la asignatura

Tipo Obligatoria

Materia Lenguajes de Programación

Período de impartición Primer cuatrimestre

Nº Créditos 6

Idioma en el que se imparte Español

Departamento Ciencias de la Computación

Asignaturas llave

Tasa de éxitoEste dato será incluido por el Vicerrectorado de Profesorado,Titulaciones, Ordenación Académica, Coordinación y Campus

II.- Presentación

Esta asignatura tiene como objeto introducir al alumno en los aspectos fundamentales del paradigma dela programación declarativa: conceptos y características principales, diferencias con otros paradigmas,

modo de funcionamiento, aplicaciones para las que resulta más adecuado, etc. Se introducen, enparticular, los fundamentos, las herramientas y las técnicas básicas propias de dos de los principalestipos de lenguajes declarativos existentes: los lenguajes funcionales y los lenguajes lógicos.

La asignatura forma parte, junto con Procesadores de Lenguajes (impartida en el segundo cuatrimestredel tercer curso de la titulación), de la materia denominada Lenguajes de Programación.

Para seguir la asignatura es recomendable haber cursado con aprovechamiento las asignaturas básicasde Matemáticas e Informática impartidas en el primer curso de la titulación (en particular  Lógica,Matemática discreta y Álgebra e Introducción a la programación) así como las asignaturas englobadasen las materias relativas a Programación y Algoritmia, especialmente Estructuras de Datos y Diseño yanálisis de algoritmos.

Page 3: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 3/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

3  Última actualización: 25 de  julio de 2011 

III.- Competenc ias

Competencias transversales

G5 (parte) Capacidad para concebir, desarrollar y mantener

sistemas, servicios y aplicaciones informáticas

empleando los métodos de la ingeniería del software

como instrumento para el aseguramiento de su calidad,

de acuerdo con los conocimientos adquiridos según lo

establecido en el acuerdo del 3 de marzo de 2009 del

Consejo de Universidades relativo a los títulos de

Informática.

G9 (parte) Capacidad para resolver problemas con iniciativa, toma

de decisiones, autonomía y creatividad. Capacidad parasaber comunicar y transmitir los conocimientos,

habilidades y destrezas de la profesión de Ingeniero

Técnico en Informática. 

Competencias específicas

C6 (parte) Conocimiento y aplicación de los procedimientos

algorítmicos básicos de las tecnologías informáticas para

diseñar soluciones a problemas, analizando la idoneidad

y complejidad de los algoritmos propuestos.

C8 (parte) Capacidad para analizar, diseñar, construir y manteneraplicaciones de forma robusta, segura y eficiente,eligiendo el paradigma y los lenguajes de programaciónmás adecuados.

C14 (parte) Conocimiento y aplicación de los principiosfundamentales y técnicas básicas de la programaciónparalela, concurrente, distribuida y de tiempo real. 

C15 (parte) Conocimiento y aplicación de los principiosfundamentales y técnicas básicas de los sistemasinteligentes y su aplicación práctica.

E1 (parte) Capacidad para tener un conocimiento profundo de losprincipios fundamentales y modelos de la computación ysaberlos aplicar para interpretar, seleccionar, valorar,modelar, y crear nuevos conceptos, teorías, usos ydesarrollos tecnológicos relacionados con la informática

E4 (parte) Capacidad para conocer los fundamentos, paradigmas y

técnicas propias de los sistemas inteligentes y analizar,

diseñar y construir sistemas, servicios y aplicaciones

informáticas que utilicen dichas técnicas en cualquier

ámbito de aplicación.

Page 4: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 4/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

4  Última actualización: 25 de  julio de 2011 

IV.- Contenido

IV. A. Temario de la asignatura

Bloque temático Tema Apartados

I.- Preliminares Tema 1. Introducción Descripción general de laasignatura (contexto, requisitos,objetivos, contenidos) y de lamateria a estudiar (evolución,características, funcionamiento,aplicaciones, etc).

II.-Programación Funcional Tema 2. Introducción a la

programación Funcional

Introducción del paradigma de

programación funcional.Introducción a Haskell.

Tema 3. Tipos y Clases. Definiciónde Funciones

Concepto de tipo y clase. Distintasformas de definir una función.

Tema 4. Listas por compresión.Funciones recursivas

Definición de listas por comprensión. Recursividad en ladefinición de funciones.

Tema 5. Funciones de Orden

Superior 

Concepto de funciones de orden

superior. Aplicaciones.

Tema 6. Declaración de tipos yclases. Evaluación perezosa.

Formas de declarar nuevos tipos.Estrategias de evaluación.

Tema 7. Programación conMónadas y Programación Modular.

Concepto de mónadas. Uso.Programación con diferentesmódulos.

III.- Programación Lógica Tema 8. El paradigma de laprogramación lógica.

Descripción general, ejemplos,características básicas, evolución

histórica, fundamentos teóricos.

Tema 9. El lenguaje Prolog:aspectos básicos

Características generales, sintaxis,predicados predefinidos básicos(aritmética, entrada/salida, corte,inspección de términos, etc),manejo de listas, árboles, ...

Tema 10. El lenguaje Prolog:aspectos avanzados

Negación, predicados de ordensuperior, operadores, manipulaciónde la base de conocimientos,…

Page 5: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 5/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

5  Última actualización: 25 de  julio de 2011 

IV. B. Actividades obligatorias (evaluables):

1. Prácti cas

Realización de varios ejercicios o prácticas de programación.

V.- Tiempo de trabajo

Clases teóricas 16

Clases prácticas/de resolución de problemas, casos, etc. 10

Prácticas en laboratorios tecnológicos, clínicos, etc. 16

Realización de pruebas 6

Tutorías académicas 12

Actividades relacionadas: jornadas, seminarios, etc. 0

Preparación de clases teóricas 30

Preparación de clases prácticas/problemas/casos 30

Preparación de pruebas 30Total de horas de trabajo del estudi ante 150

VI.- Metodo logía y plan de trabajo

Clases teóricas

Periodo Contenidos

1-2 Temas 1 – 3

3-4 Temas 4 – 5

5-6 Temas 6 – 7

7 Tema 8

8-10 Tema 9

11-12 Tema 10

Page 6: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 6/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

6  Última actualización: 25 de  julio de 2011 

Prácticas/de resolución de problemas, casos, etc.

Periodo Contenidos

3-4 Temas 3 – 5

5-6 Temas 6 – 7

7 Tema 8

8-10 Tema 9

11-12 Tema 10

Laboratorios

Periodo Contenidos

3-4 Temas 3 – 5

5-6 Temas 6 – 7

8-11 Tema 9

12 Tema 10

Tutorías académicas

Periodo

Todo

Pruebas

Fecha Contenidos

Semana 5 Prueba práctica Temas 3 – 5

Semana 6 Prueba escrita Temas 1 – 7

Semana 10 Prueba escrita Temas 8 - 9

Periodo depruebas

Prueba escrita Bloque III

Page 7: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 7/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

7  Última actualización: 25 de  julio de 2011 

VII.- Métodos de evaluación

VII. A. Ponderación para la evaluación continua 

El sistema de evaluación de las titulaciones en el marco del EEES es la evaluación continua.

En el sistema de evaluación continua la asistencia a clase es obligatoria y su valoración en el proceso deevaluación continua de la asignatura la establecerán los profesores en cada asignatura.

% Mínimo de asistencia a clase: 80%.

La evaluación de la asignatura se llevará a cabo mediante cinco pruebas presenciales, conponderaciones de 10%, 5%, 35% (programación funcional) y 30% y 20% (programación lógica). Todas laspruebas, salvo la primera, requieren una nota mínima de 4 sobre 10 y son reevaluables en la segunda

convocatoria. Para aprobar la asignatura será necesario, además, que la media ponderada de las cincopruebas sea igual o mayor que 5 sobre 10. 

Acti vidad evaluadora Tipo Ponderación Periodo Contenido

Prácticas dentro delaula:

Resolución deproblemas

Acumulativa No reevaluable 10% Semana 5 Temas 3-5

Prueba: escrita

Test

Liberatoria

Puntuación mínima(de 1 a 10): 4

Reevaluable 5% Semana 6 Temas 1-7

Prueba: escrita

Preguntas dedesarrollo escritas

Liberatoria

Puntuación mínima(de 1 a 10): 4

Reevaluable 35% Semana 6 Temas 1-7

Prueba: escrita

Preguntas cortas

Preguntas dedesarrollo

Resolución deproblemas

Liberatoria

Puntuación mínima(de 1 a 10):…4…..

Reevaluable 30% Semana nº10

Temas 8-9

Prueba: escrita

Preguntas dedesarrollo

Resolución de

problemas

Liberatoria

Puntuación mínima(de 1 a 10):…4…..

Reevaluable 20 % Periodo depruebas

Bloque III

Page 8: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 8/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

8  Última actualización: 25 de  julio de 2011 

Total  100% 

VII. B. Ponderación para la evaluación de alumnos a tiempo parcial

Para que un alumno pueda optar a esta evaluación, tendrá que obtener la “Dispensa Académica” para laasignatura, que habrá solicitado al Decano o Director/a del Centro que imparte su titulación.

La “Dispensa Académica” no excluye de la evaluación continua. Dicha evaluación se acomodará por elprofesor, asistido por el coordinador de grado, estableciéndose la adaptación curricular según lascaracterísticas de cada caso concreto.

VII. C. Revisión de las pruebas de evaluación.

La revisión de las pruebas y actividades se llevará a cabo en el horario de tutorías de la asignatura deacuerdo con los procedimientos que se especifiquen en su momento.

VIII.- Recursos y materiales didácticos

General

Título Haskell. The Craft of Functional Programming

Autor S. THOMPSON

Editorial Addison-Wesley, 1997

Título Programming in Haskell

Autor Graham Hutton

Editorial Cambrigde, 2007

Título Razonando con Haskell

Autor B. RUIZ, F. GUTIÉRREZ, P. GUERRERO y J. GALLARDO

Editorial Thomson, 2004

Título Programming in Prolog.

Autor W.F. Clocksin and C.S. Mellish.

Editorial Springer-Verlag, Berlin, fourth edition, 1994.

Título The Art of Prolog.

Autor L. Sterling and E. Shapiro.

Page 9: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 9/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

9  Última actualización: 25 de  julio de 2011 

Editorial The MIT Press, Cambridge, Mass., second edition, 1994.

Título Prolog Programming for Artificial Intelligence. 

Autor I. Bratko.

Editorial Addison-Wesley, Reading, Massachusetts, third edition, 2001.

Complementaria

Título Introduction to Functional Programming using Haskell

Autor Richard Bird

Editorial Prentice Hall, 2º Ed.

Título Algorithms: A functional programming approach

Autor F. Rabhi y G. Lapalme

Editorial Addison–Wesley,1999

Título Real World Haskell

Autor B. O’Sullivan, D. Stewart y J. Goerzen

Editorial O’Reilly, 2008

Título Logic, Programming and Prolog

Autor Ulf Nilsson and Jan MaÃluszy¶nski

Editorial John Wiley & Sons Ltd, 1996 (disponible enhttp://www.ida.liu.se/~ulfni/lpp/)

Título The Craft of Prolog.

Autor R. O’Keefe.

Editorial The MIT Press, Cambridge, MA, 1990.

Título Foundations of Logic Programming, Second Edition

Autor John Lloyd.

Editorial Springer-Verlag, 1987.

Page 10: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 10/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

10  Última actualización: 25 de  julio de 2011 

Direcciones web de in terés

http://dtai.cs.kuleuven.be/projects/ALP/ (Association for Logic Programming)

http://www.logic.at/prolog/faq/ (comp.lang.prolog . Faq) 

http://www.swi-prolog.org/ (compilador de Prolog; software libre)

http://www.gavab.es/wiki/eclipsegavab/(entorno para trabajar con Haskell)

 

IX.- Profesorado

Nombre y apellidos María Teresa González de Lena

Horario de tutoríasacadémicas

Se determinará al empezar el curso

Correo electrónico [email protected]

Departamento/área deconocimiento

Ciencias de la Computación/Ciencia de la Computación e InteligenciaArtificial

Categoría Profesora colaboradora

Titulación Académica Licenciada en CC. Físicas

Experiencia Docente 5 años en el área.

Experiencia profesional PDI desde 2001 en la URJC.

Nombre y apellidos Soto Montalvo Herranz

Horario de tutoríasacadémicas

Se determinará al empezar el curso

Correo electrónico [email protected]

Departamento/área deconocimiento

Ciencias de la Computación / Ciencias de la Computación e InteligenciaArtificial

Categoría Profesor Colaborador 

Titulación Académica Ingeniería Informática

Experiencia Docente Profesora de la Universidad Rey Juan Carlos desde octubre de 2004,impartiendo diversas asignaturas de grado. Evaluación positiva de un

quinquenio y del programa Docentia de la URJC.

Page 11: Programación declarativa - GII 2011/2012

5/8/2018 Programación declarativa - GII 2011/2012 - slidepdf.com

http://slidepdf.com/reader/full/programacion-declarativa-gii-20112012 11/11

 

 Vicerrectorado de Profesorado, Titulaciones, 

Ordenación Académica, Coordinación y Campus.

 

11  Última actualización: 25 de  julio de 2011 

Experiencia profesional Programador de aplicaciones Java en INSA y Analista Programador enUNMATERIAL TRENDS de septiembre del 2000 a noviembre de 2001.Becario de investigación en la Universidad Rey Juan Carlos (2002 – 2003)

Nombre y apellidos Ana Pradera

Horario de tutoríasacadémicas

Se determinará al empezar el curso

Correo electrónico [email protected] 

Departamento/área deconocimiento

Ciencias de la Computación/Ciencia de la Computación e InteligenciaArtificial

Categoría Profesora Titular de Universidad

Titulación Académica Licenciada en Ciencias Matemáticas (UCM).

Doctora en Informática (UPM).

Experiencia Docente 15 años de docencia universitaria en titulaciones de Informática en lasUniversidades de Alcalá y Rey Juan Carlos. Tres tramos de docencia.

Experiencia profesional 8 años en los departamentos de investigación de distintas empresasinformáticas.

Nombre y apellidos Juan Manuel Serrano Hidalgo

Horario de tutoríasacadémicas

Se determinará al empezar el curso

Correo electrónico  [email protected] 

Departamento/área deconocimiento

Ciencias de la Computación/Ciencia de la Computación e InteligenciaArtificial

Categoría Profesor Titular de Universidad

Titulación Académica Licenciado en Informática (UPM)Licenciado en Filosofía (UNED)Doctor en Informática (URJC)

Experiencia Docente 2 tramos de docenciaProfesor de la Universidad Pontificia de Salamanca, 1998-1999Profesor de la Universidad Rey Juan Carlos, 1999-

Experiencia profesional Becario de investigación, 1994-1999Profesor de universidad, 1998-