Teoría de Lenguajes

De Cuba-Wiki
Revisión del 18:39 5 oct 2015 de Rickety (discusión | contribs.) (agrego apuntes de clase)

Teoría de Lenguajes es una materia que tiene como objetivo presentar las nociones de lenguaje formal y de sintaxis y semántica de lenguajes, imprescindibles para la construcción de compiladores. Pertenece al Departamento de Computación y segun el plan de la carrera, deberia cursarse en Cuarto Año. Es correlativa de Lógica y Computabilidad. Se cursa los Lunes, Miercoles y Jueves.

Programa

Primera Parte

Introducción. Lenguajes y gramáticas. Clasificación de Chomsky. Lenguajes regulares, Autómatas. Expresiones regulares. Equivalencias entre expresiones regulares, gramáticas regulares y autómatas. Lema de pumping. Minimización de autómatas. Decidibilidad de problemas básicos y propiedades de clausura. Analizadores lexicográficos. Lenguajes independientes de contexto. Arboles de derivación. Lema de pumping para lenguajes independientes de contexto, Gramáticas reducidas. Autómatas de pila. Lenguajes determinísticos, Equivalencias entre autómatas de pila y gramáticas libres de contexto.

Segunda Parte

Lenguajes tipo 1 y tipo 0. Máquinas asociadas. Parsers ascendentes y descendentes. Método LL(1). Parser descendente recursivo y por tablas. Transformación de gramáticas. Propiedades de las gramáticas LL(1). Métodos ascendentes. Métodos de precedencia. Métodos LR. LR(0). Propiedades. Métodos LR(0), SLR(1), LR(1) y LALR(1). Gramáticas de atributos. Definiciones guiadas por la sintaxis. Esquemas de traducción. Aplicación al análisis semántico y la generación de código. Semántica de los lenguajes de programación. Semántica operacional natural. Semántica operacional de computación.

Prácticas

Primer Parcial

Segundo Parcial

Apuntes

Apuntes de Clase

  • Apuntes de clase: los apuntes que entrega Julio en la clase, con (bastantes) correcciones y algunas anotaciones extra.

Primer Parcial

Segundo Parcial

Final

Finales

Parciales

Primeros Parciales

Segundos Parciales

Trabajos Prácticos Viejos

Enlaces externos