Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).
Código de la asignatura | 1765 |
---|---|
Nº Créditos ECTS | 6 |
Tipo | Obligatoria |
Duración | Semestral |
Idiomas | Castellano |
Planes de estudio | |
Profesor(es) | |
Año académico | 2024-25 |
Procesadores de Lenguajes es una asignatura de tipo obligatorio que consta de 6 créditos y que introducirá al estudiante en las áreas fundamentales de la teoría de autómatas, lenguajes formales y gramáticas que constituyen la base del funcionamiento de los procesadores de lenguajes. Se exploran los problemas y técnicas que se plantean en la construcción de procesadores, compiladores, traductores e intérpretes de los diferentes lenguajes de programación. El estudio de dichas técnicas ofrecerá al estudiante una visión más amplia de los lenguajes de programación, previamente estudiados desde el punto de vista del programador y no del constructor de intérpretes o compiladores. Otras aplicaciones de la teoría de autómatas son los analizadores del lenguaje natural, los sistemas de control de máquinas industriales y la robótica.
En esta asignatura se abordarán principalmente los siguientes temas:
Los requisitos previos obligatorios antes de abordar esta asignatura son:
SEMANAS (*) | UNIDADES DIDÁCTICAS | ACTIVIDADES DIDÁCTICAS |
---|---|---|
Semana 1 | Unidad 1. Introducción a los procesadores de Lenguajes 1.1. Concepto de traductor 1.2. Notas históricas 1.3. Programas relacionados con los compiladores 1.4. Proceso de traducción o compilación 1.5. Principales estructuras de datos en un compiladores 1.6. Otros aspectos de la estructura de un compilador 1.7. Alfabetos, cadenas y lenguajes |
|
Semana 2 | Unidad 2. Autómatas finitos deterministas 2.1. Introducción a los autómatas finitos 2.2. Autómata finito determinista (AFD) 2.3. Diseño de AFDs |
|
Semana 3 | Unidad 3. Autómatas finitos no deterministas y sus aplicaciones 3.1. Papel del indeterminismo en los autómatas finitos 3.2. Definición de autómata finito no determinista (AFN) 3.3. Lenguaje aceptado por un autómata finito no determinista 3.4. Diseño de AFNs 3.5. Aplicaciones de los autómatas finitos |
|
Semana 4 | Unidad 4. Lenguajes y expresiones regulares. 4.1. Introducción a los lenguajes regulares 4.2. Introducción a las expresiones regulares 4.3. Diseño de expresiones regulares 4.4. Aplicaciones de las expresiones regulares |
|
Semana 5 |
Unidad 5. Transformaciones entre Modelos Formales 5.1. Transformación de una expresión regular (ER) en un autómata finito no determinista (AFN) equivalente 5.2. Transformación de un autómata finito no determinista en una expresión regular equivalente 5.3. Eliminación de las ε-transiciones y transformación de autómatas finitos no deterministas en autómatas finitos deterministas 5.4. Lema de bombeo 5.5 Autómatas finitos con salida |
|
Semana 6 | Unidad 6. Introducción a las gramáticas independientes del contexto 6.1. Grámaticas 6.2. Jerarquía de Chomsky 6.3. Gramáticas regulares 6.4. Gramáticas independientes del contexto 6.5 Diseño de gramáticas independientes del contexto |
|
Semana 7 | Unidad 7. Autómatas de pila y aplicaciones de las gramáticas independientes de contexto 7.1. Autómatas de pila 7.2. Autómatas de pila deterministas 7.3. Equivalencia entre gramáticas independientes del contexto y autómatas de pila 7.4. Conceptos básicos para el análisis sintáctico 7.5. Forma normal de Chomsky |
|
Semanas 8 y 9 | Unidad 8. Análisis sintáctico descendente 8.1 Introducción a las técnicas LL(1) y LL(k) 8.2. Técnica LL(1) 8.3. Método recursivo-descendente 8.4. Transformaciones en las gramáticas |
|
Semana 10 | Semana para trabajar en actividades | |
Semana 11 | Unidad 9. Análisis sintáctico ascendente 9.1 Introducción al análisis sintáctico ascendente 9.2. Técnicas LR 9.3. Técnicas LR particulares 9.4. Proceso general LR |
|
Semanas 12, 13 y 14 | Semana para trabajar en actividades |
|
Semana 15 | Unidad 10. Análisis Semántico 10.1. Semántica de los lenguajes de programación 10.2. Gramáticas con atributos 10.3. Relación entre gramáticas con atributos y procesadores de lenguajes 10.4. Las gramáticas y los lenguajes de marcado |
|
Resto de semanas hasta finalización del semestre | Estudio y preparación para el examen final, celebración del examen final y cierre de actas. |
Tipo de actividad | Actividades planificadas | Peso clasificación |
---|---|---|
Actividades de aprendizaje | 2 | 10% |
Actividades de Ebaluación Continua (AEC) | 3 | 25% |
Controles | 2 | 10% |
Examen final | 55% | |
Total | 100% |
Para aprobar la asignatura, es necesario obtener una calificación mínima de 5 en el examen final presencial, así como en la calificación total del curso, una vez realizado el cómputo ponderado de las calificaciones obtenidas en las actividades didácticas y en el examen final presencial.
Si un estudiante no aprueba la asignatura en la convocatoria ordinaria podrá examinarse en la convocatoria de septiembre.
Las fechas previstas para la realización de todas las actividades se indican en el aula virtual de la asignatura.
Según la Real Academia Española, “plagiar” significa copiar en lo sustancial obras ajenas dándolas como propias. Dicho de otro modo, plagiar implica expresar las ideas de otra persona como si fuesen propias, sin citar la autoría de las mismas. Igualmente, la apropiación de contenido puede ser debida a una inclusión excesiva de información procedente de una misma fuente, pese a que esta haya sido citada adecuadamente. Teniendo en cuenta lo anterior, el estudiante deberá desarrollar sus conocimientos con sus propias palabras y expresiones. En ningún caso se aceptarán copias literales de párrafos, imágenes, gráficos, tablas, etc. de los materiales consultados. En caso de ser necesaria su reproducción, esta deberá contemplar las normas adecuadas para la citación académica.
Los documentos que sean presentados en las actividades académicas podrán ser sometidos a diferentes mecanismos de comprobación de la originalidad (herramientas antiplagios que detectan coincidencias de texto con otras fuentes, comparación con trabajos de otros estudiantes, comparación con información publicada en Internet, etc). El profesor valorará si el trabajo presentado cuenta con los criterios de originalidad exigidos o, en su caso, se atribuye adecuadamente la información no propia a las fuentes correspondientes. La adjudicación como propia de información que corresponde a otros autores podrá suponer el suspenso de la actividad.
Los documentos presentados en las actividades académicas podrán ser almacenados en formato papel o electrónico y servir de comparación con otros trabajos de terceros, a fin de proteger la originalidad de la fuente y evitar la apropiación indebida de todo o parte del trabajo del estudiante. Por tanto, podrán ser utilizados y almacenados por la universidad, a través del sistema que estime, con el único fin de servir como fuente de comparación de cualquier otro trabajo que se presente.
El sistema de calificación de todas las actividades didácticas es numérico del 0 a 10 con expresión de un decimal, al que se añade su correspondiente calificación cualitativa:
0 - 4.9: Suspenso (SU) 5.0 - 6.9: Aprobado (AP) 7.0 - 8.9: Notable (NT) 9.0 - 10: Sobresaliente (SB)
(RD 1125/2003, de 5 de septiembre, por lo que se establece el sistema europeo de créditos y el sistema de calificaciones en las titulaciones universitarias de carácter oficial y con validez en todo el territorio nacional).