Programación Avanzada



Temario
  1. La máquina virtual de Prolog.

    1.1. Introducción a los lenguajes de programación lógica
    1.2. Unificación
    1.3. Resolución plana
    1.4. Prolog puro
    1.5. Optimizaciones del compilador

  2. Lenguajes de "script"

    2.1. Características de los lenguajes de script
    2.2. Lenguajes de script y HTML: DHTML
    2.3. Fundamentos del lenguaje
    2.4. JavaScript y el DOM
    2.5. Ejemplos prácticos



Prácticas

El trabajo en el laboratorio está encaminado a ilustrar en la práctica los conceptos teóricos de la asignatura. Los lenguajes de programación empleados serán: SICStus Prolog (PostScript) y JavaScript.

Las prácticas a realizar en el laboratorio son:

Información sobre la implementación del compilador
(incluye qué es obligatorio y qué voluntario, así como algunas ideas para comenzar la implementación)




Material (aula)


Material (laboratorio)

Los siguientes ficheros son útiles para implementar el analizador sintáctico (parser) de Prolog:

La gramática de Prolog recoge los principales elementos de un programa Prolog. Todos ellos deben ser reconocidos por el parser. El objetivo del parser es leer un fichero conteniendo un programa Prolog estándar, analizar sintácticamente el contenido del fichero y, si es correcto, traducirlo a una representacion interna más manejable (la representacion ground). No vamos a considerar la detección de errores (es decir, asumimos que los programas Prolog de entrada al parser son correctos).

Para facilitaros la tarea, podéis usar el fichero interfaz.pl que contiene el esqueleto del compilador que debéis realizar, y desde el cual podéis invocar el parser. Asimismo, podéis encontrar la estructura básica del parser en el fichero mi_parser.

Información sobre la implementación del compilador (incluye qué es obligatorio y qué voluntario, así como algunas ideas para comenzar la implementación)