Guías Docentes Electrónicas
1. DATOS GENERALES
Asignatura:
PROCESADORES DE LENGUAJES
Código:
42349
Tipología:
OBLIGATORIA
Créditos ECTS:
6
Grado:
347 - GRADO EN INGENIERÍA INFORMÁTICA (CR)
Curso académico:
2023-24
Centro:
108 - ESCUELA SUPERIOR DE INFORMATICA C. REAL
Grupo(s):
20 
Curso:
4
Duración:
Primer cuatrimestre
Lengua principal de impartición:
Español
Segunda lengua:
Uso docente de otras lenguas:
English Friendly:
N
Página web:
http://campusvirtual.uclm.es; http://portal.esi.uclm.es/proletool3/
Bilingüe:
N
Profesor: JOSE JESUS CASTRO SANCHEZ - Grupo(s): 20 
Edificio/Despacho
Departamento
Teléfono
Correo electrónico
Horario de tutoría
Fermín Caballero / 3.19
TECNOLOGÍAS Y SISTEMAS DE INFORMACIÓN
926 05 23 43
josejesus.castro@uclm.es
Disponible en https://esi.uclm.es/categories/profesorado-y-tutorias

2. REQUISITOS PREVIOS

Esta asignatura se apoya en las competencias y conocimientos adquiridos en otras asignaturas del plan de estudios:

  • Teoría de Autómatas y Computación.
  • Estructura de Datos.
  • Fundamentos de Programación I y II.
  • Metodología de Programación.
  • Estructura de Computadores.

Por lo que para asimilar y aprovechar convenientemente los contenidos que se impartirán en  la asignatura, se recomienda haberlas superado.

3. JUSTIFICACIÓN EN EL PLAN DE ESTUDIOS, RELACIÓN CON OTRAS ASIGNATURAS Y CON LA PROFESIÓN

Esta asignatura se integra en la materia Tecnología Específica de Computación. Su principal objetivo es introducir y consolidar los principios de funcionamiento de los compiladores e intérpretes, así como mostrar su utilidad en el diseño y especificación de lenguajes específicos del dominio dedicados a un problema de dominio en particular, o una técnica de representación o resolución de problemas específica, y de la construcción de sus procesadores asociados.

Los conocimientos adquiridos en el estudio de los procesadores de lenguaje también encuentran aplicación fuera del campo de la compilación. La importancia práctica de los procesadores de lenguaje en la informática se manifiesta principalmente en el uso cotidiano que hace el profesional informático de compiladores e intérpretes, consustancial a la gestión y programación de los sistemas informáticos. Entre los campos de la informática en los que encuentran aplicación las técnicas aprendidas en Procesadores de Lenguaje podemos citar, sin ánimo de dar una relación exhaustiva, los siguientes: Diseño de los lenguajes de programación, herramientas de ayuda a la programación, diseño de lenguajes de control de aplicaciones o del sistema operativo, tratamiento de ficheros de texto con información estructurada, procesadores de texto, diseño e interpretación de lenguajes para el formateo de texto y descripción de gráficos, gestión de bases de datos, cálculo simbólico, control de dispositivos sofisticados, diseño de circuitería compleja (mediante los denominados compiladores de silicio), interfaces hombre-máquina multimodales, visión artificial, reconocimiento de formas, diseño de videojuegos, etc.

Hoy en día, la compilación se considera un área clásica de la informática, sólidamente fundada sobre un rico cuerpo teórico y sistematizada en sus aspectos de diseño. El futuro de los procesadores de lenguajes aparece vinculado al desarollo de sus múltiples áreas de aplicación. Por tanto, un conocimiento profundo de los principios y técnicas de procesadores de lenguajes es fundamental en la formación universitaria de especialistas en informática, y en concreto de los alumnos que opten por la intensificación de Computación.


4. COMPETENCIAS DE LA TITULACIÓN QUE LA ASIGNATURA CONTRIBUYE A ALCANZAR
Competencias propias de la asignatura
Código Descripción
CM02 Capacidad para conocer los fundamentos teóricos de los lenguajes de programación y las técnicas de procesamiento léxico, sintáctico y semántico asociadas, y saber aplicarlas para la creación, diseño y procesamiento de lenguajes.
INS01 Capacidad de análisis, síntesis y evaluación.
INS04 Capacidad de resolución de problemas aplicando técnicas de ingeniería.
INS05 Capacidad para argumentar y justificar lógicamente las decisiones tomadas y las opiniones.
PER02 Capacidad de trabajo en equipo interdisciplinar.
PER04 Capacidad de relación interpersonal.
PER05 Reconocimiento a la diversidad, la igualdad y la multiculturalidad.
SIS01 Razonamiento crítico.
SIS03 Aprendizaje autónomo.
UCLM03 Correcta comunicación oral y escrita.
5. OBJETIVOS O RESULTADOS DE APRENDIZAJE ESPERADOS
Resultados de aprendizaje propios de la asignatura
Descripción
Saber construir aplicaciones basadas en procesadores para lenguajes específicos de un dominio.
Conocer en qué consiste un lenguaje de programación y tener una visión integrada del funcionamiento y estructura de un procesador de lenguajes.
Resultados adicionales
No se han establecido.
6. TEMARIO
  • Tema 1: Introducción
    • Tema 1.1: Conceptos básicos de la asignatura
    • Tema 1.2: Evolución en el campo de estudio
    • Tema 1.3: Estructura de los Procesadores de Lenguajes
    • Tema 1.4: Técnicas de construcción
  • Tema 2: Fase de Análisis: Análisis Léxico
    • Tema 2.1: Objetivo
    • Tema 2.2: Conceptos básicos
    • Tema 2.3: Diseño y construcción del Analizador Léxico
    • Tema 2.4: Tratamiento del error
  • Tema 3: Fase de Análisis: Análisis Sintáctico
    • Tema 3.1: Objetivo
    • Tema 3.2: Conceptos básicos
    • Tema 3.3: Estrategias para la realización del Análisis Sintáctico
  • Tema 4: Estrategia de Análisis Sintáctico Descendente
    • Tema 4.1: Introducción y conceptos básicos
    • Tema 4.2: Analizadores Sintácticos Descendentes Predictivos LL
    • Tema 4.3: Tratamiento del error
  • Tema 5: Estrategia de Análisis Sintáctico Ascendente
    • Tema 5.1: Introducción y conceptos básicos
    • Tema 5.2: Analizadores Sintácticos Ascendentes LR
    • Tema 5.3: Tratamiento del error
  • Tema 6: Fase de Análisis: Análisis Semántico
    • Tema 6.1: Introducción y conceptos básicos
    • Tema 6.2: Gramáticas con atributos y reglas semánticas
    • Tema 6.3: Evaluación de las reglas semánticas
  • Tema 7: Fase de Síntesis
    • Tema 7.1: Código Intermedio
    • Tema 7.2: Organización y Gestión de la memoria
    • Tema 7.3: Optimización de Código
COMENTARIOS ADICIONALES SOBRE EL TEMARIO

Prácticas de Laboratorio:

1.- Diseño de un lenguaje específico del dominio.

2.- Diseño y construcción del Analizador Léxico.

3.- Diseño y construcción del Analizador Sintáctico.

4.- Diseño y construcción del Analizador Semántico.


7. ACTIVIDADES O BLOQUES DE ACTIVIDAD Y METODOLOGÍA
Actividad formativa Metodología Competencias relacionadas (para títulos anteriores a RD 822/2021) ECTS Horas Ev Ob Descripción
Enseñanza presencial (Teoría) [PRESENCIAL] Método expositivo/Lección magistral CM02 0.6 15 N N Exposición del temario por parte del profesor (MAG)
Tutorías individuales [PRESENCIAL] Aprendizaje internacional colaborativo en línea (COIL) CM02 UCLM03 0.18 4.5 N N Tutorías individuales o en pequeños grupos en el despacho del profesor, clase o laboratorio (TUT)
Estudio o preparación de pruebas [AUTÓNOMA] Trabajo autónomo CM02 SIS01 SIS03 1.8 45 N N Estudio individual (EST)
Otra actividad no presencial [AUTÓNOMA] Prácticas CM02 SIS03 0.9 22.5 S S Realización de una práctica final en la que se diseñe un Lenguaje Específico del Dominio y su procesador asociado (PLAB)
Resolución de problemas o casos [PRESENCIAL] Resolución de ejercicios y problemas CM02 INS01 INS04 0.6 15 N N Resolución de ejercicios por parte del profesor y los estudiantes (PRO)
Elaboración de informes o trabajos [AUTÓNOMA] Trabajo autónomo CM02 SIS01 0.9 22.5 S N Realización de un informe sobre un tema propuesto por el profesor (RES)
Prácticas de laboratorio [PRESENCIAL] Prácticas CM02 INS01 INS04 INS05 PER02 PER04 PER05 SIS01 SIS03 0.72 18 N N Preparación y realización en el laboratorio de las prácticas programadas (LAB)
Prueba final [PRESENCIAL] Pruebas de evaluación CM02 INS01 INS04 INS05 SIS01 0.3 7.5 S S Realización de un examen final de todo el temario de la asignatura (EVA)
Total: 6 150
Créditos totales de trabajo presencial: 2.4 Horas totales de trabajo presencial: 60
Créditos totales de trabajo autónomo: 3.6 Horas totales de trabajo autónomo: 90

Ev: Actividad formativa evaluable
Ob: Actividad formativa de superación obligatoria (Será imprescindible su superación tanto en evaluación continua como no continua)

8. CRITERIOS DE EVALUACIÓN Y VALORACIONES
Sistema de evaluación Evaluacion continua Evaluación no continua * Descripción
Presentación oral de temas 10.00% 10.00% Presentación en clase del trabajo realizado en prácticas y en trabajos teóricos (PRES). Actividad no obligatoria y recuperable. A realizar en las sesiones de teoría/laboratorio para los estudiantes de la modalidad continua. Los estudiantes de modalidad no continua serán evaluados de esta actividad a través de un sistema alternativo en la convocatoria ordinaria.
Prueba final 50.00% 50.00% Realización de un examen final de todo el temario de la asignatura (ESC). Actividad obligatoria y recuperable a realizar en la fecha prevista para el examen final de la convocatoria ordinaria
Realización de prácticas en laboratorio 25.00% 25.00% Realización de una práctica final en la que se diseñe un Lenguaje Específico del Dominio y su procesador asociado (LAB). Actividad obligatoria y recuperable a realizar en las sesiones de laboratorio
Elaboración de trabajos teóricos 15.00% 15.00% Realización de trabajos sobre temas propuestos por el profesor (INF). Actividad no obligatoria y recuperable a realizar antes del fin del periodo docente
Total: 100.00% 100.00%  
* En Evaluación no continua se deben definir los porcentajes de evaluación según lo dispuesto en el art. 4 del Reglamento de Evaluación del Estudiante de la UCLM, que establece que debe facilitarse a los estudiantes que no puedan asistir regularmente a las actividades formativas presenciales la superación de la asignatura, teniendo derecho (art. 12.2) a ser calificado globalmente, en 2 convocatorias anuales por asignatura, una ordinaria y otra extraordinaria (evaluándose el 100% de las competencias).

Criterios de evaluación de la convocatoria ordinaria:
  • Evaluación continua:
    En las actividades obligatorias se debe obtener un mínimo de 4 sobre 10 para considerar la actividad superada y poder aprobar la asignatura. Una misma actividad evaluable obligatoria no podrá dividirse en partes eliminatorias ni establecerse notas mínimas en cada una de sus partes. En las actividades recuperables existe una prueba de evaluación alternativa en la convocatoria extraordinaria.

    La prueba final será común para todos los grupos de teoría/laboratorio de la asignatura y será calificada por los profesores de la asignatura de forma horizontal, es decir, cada una de las partes de la prueba final será evaluada por el mismo profesor para todos los estudiantes.

    El estudiante aprueba la asignatura si obtiene un mínimo de 50 puntos sobre 100 con las valoraciones de cada actividad de evaluación y supera todas las actividades obligatorias.

    Para los estudiantes que no aprueben la asignatura en la convocatoria ordinaria, la calificación de las actividades superadas se conservará para la convocatoria extraordinaria. Si una actividad no es recuperable, su valoración se conservará para la convocatoria extraordinaria aunque no se haya superado. En el caso de actividades recuperables superadas, el estudiante podrá presentarse a la evaluación alternativa de esas actividades en la convocatoria extraordinaria y, en ese caso, la nota final de la actividad corresponderá a la última nota obtenida.

    La calificación de las actividades superadas en cualquier convocatoria, exceptuando la prueba final, se conservará para el próximo curso académico a petición del estudiante siempre que ésta sea igual o superior a 5 y no se modifique las actividades formativas y los criterios de evaluación de la asignatura en el próximo curso académico.

    La no comparecencia a la prueba final supondrá la calificación de "No presentado". Si el estudiante no ha superado alguna actividad de evaluación obligatoria, la nota final en la asignatura no puede superar el 4 sobre 10.
  • Evaluación no continua:
    Los estudiantes pueden solicitar, al principio del cuatrimestre, acogerse a la modalidad de evaluación no continua. Del mismo modo, el estudiante podrá cambiarse a la modalidad de evaluación no continua siempre que no haya participado durante el periodo de impartición de clases en actividades evaluables que supongan en su conjunto al menos el 50% de la evaluación total de la asignatura. Si un estudiante ha alcanzado ese 50% de actividades evaluables o si, en cualquier caso, el periodo de clases hubiera finalizado, se considerará en evaluación continua sin posibilidad de cambiar de modalidad de evaluación.

    Los estudiantes que se acogen a la modalidad de evaluación no continua serán calificados globalmente, en 2 convocatorias anuales, una ordinaria y otra extraordinaria, evaluándose el 100% de las competencias, a través de los sistemas de evaluación indicados en la columna "Evaluación no continua".

    En la modalidad de evaluación "no continua" no existe la obligatoriedad de conservar la nota obtenida por el estudiante en las actividades o pruebas (de progreso o parciales) que haya realizado en modalidad de evaluación continua.

Particularidades de la convocatoria extraordinaria:
Se realizará pruebas de evaluación para todas las actividades recuperables.

La no comparecencia a la prueba final supondrá la calificación de "No presentado", salvo en el caso en que el estudiante conserve la nota de dicha prueba de la convocatoria ordinaria. En este último caso, la realización por parte del estudiante de cualquier otra actividad evaluable en la convocatoria extraordinaria supondrá la calificación numérica en el acta.
Particularidades de la convocatoria especial de finalización:
Mismas características que en la convocatoria extraordinaria.
9. SECUENCIA DE TRABAJO, CALENDARIO, HITOS IMPORTANTES E INVERSIÓN TEMPORAL
No asignables a temas
Horas Suma horas

Comentarios generales sobre la planificación: La asignatura se imparte en tres sesiones semanales de 1,5 horas
10. BIBLIOGRAFÍA, RECURSOS
Autor/es Título Libro/Revista Población Editorial ISBN Año Descripción Enlace Web Catálogo biblioteca
A.V. Aho, M.S. Lam, R. Sethi, J.D. Ullman Compiladores: Principios, Técnicas y Herramientas Pearson. Addison Wesley 9789702611332 2008  
J.J. Castro Proletool: Herramienta para el Aprendizaje de Procesadores de Lenguajes 2013 http://portal.esi.uclm.es/proletool3/  
K.C. Louden Construcción de Compiladores Thomson 9789706862990 2004  



Web mantenido y actualizado por el Servicio de informática