Diferencia entre revisiones de «Teoría de Lenguajes»

De Cuba-Wiki
(Agrego 2r1c2020)
(No se muestran 32 ediciones intermedias de 18 usuarios)
Línea 1: Línea 1:
'''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 [http://www.dc.uba.ar Departamento de Computación] y segun el plan de la carrera, deberia cursarse en Cuarto Año. Es correlativa de [[Lógica y Computabilidad]].
'''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 [http://www.dc.uba.ar Departamento de Computación] y según el plan de la carrera, debería cursarse en Cuarto Año. Es correlativa de [[Lógica y Computabilidad]].
Se cursa los Lunes, Miercoles y Jueves.
Se cursa los Lunes, Miércoles y Jueves.


==Programa==
==Programa==
Línea 32: Línea 32:


==Apuntes==
==Apuntes==
'''Ejercicios Resueltos'''
*[[Medio:Ejercicio_Pumping.pdf|Ej. de Pumping para regulares]]: contiene una explicación detallada de un ejercicio de la guía de Lema de Pumping para lenguajes regulares.
*[[Medio:T._Leng._Guía_8.pdf|Soluciones Guía 8]]: Mini apunte y soluciones a ejercicios de la Guía 8


'''Apuntes de Clase'''
'''Apuntes de Clase'''
Línea 43: Línea 47:


'''Final'''
'''Final'''
*[[Medio:TLeng_Apunte_2015_Jsackmann.epub|Apunte de Teoría de Lenguajes]]: contiene la parte de Julio y unos mínimos comentarios sobre parsing no determinístico. Preparado en 2015.
*[[Medio:TLeng_Apunte_2015_Jsackmann.epub|Apunte de Teoría de Lenguajes]], por Julián Sackmann: contiene la parte de Julio y unos mínimos comentarios sobre parsing no determinístico. Preparado en 2015. Está en formato EPUB, para leer fácilmente desde eReaders.
*[[Medio:TLeng_Apunte_Latashen.pdf|Notas de estudio de Raul Latashen]] ([http://es.scribd.com/doc/49810902/Notas-de-Teoria-de-Lenguajes?secret_password=8x7y734fvrtjy9mgv0e Fuente original])
*[[Medio:TLeng_Apunte_Latashen.pdf|Notas de estudio de Raul Latashen]] ([http://es.scribd.com/doc/49810902/Notas-de-Teoria-de-Lenguajes?secret_password=8x7y734fvrtjy9mgv0e Fuente original])
*[http://es.scribd.com/doc/49811568/Apunte-de-Teoria-de-Lenguajes?secret_password=11sxk5o1z1mrrw6erjs2 Apunte para el final de Soledad Ramusio]
*[http://es.scribd.com/doc/49811568/Apunte-de-Teoria-de-Lenguajes?secret_password=11sxk5o1z1mrrw6erjs2 Apunte para el final de Soledad Ramusio]
Línea 53: Línea 57:


== Finales ==
== Finales ==
Ver en [[Demostraciones (Teoría de Lenguajes)]] la nota sobre demostración de lema de pumping para LLC, lo toman siempre.
*[[Final del 28/02/20 (Teoría de Lenguajes)|Final del 28/02/20]]
*[[Final del 21/02/20 (Teoría de Lenguajes)|Final del 21/02/20]]
*[[Final del 13/12/19 (Teoría de Lenguajes)|Final del 13/12/19]]
*[[Final del 13/11/19 (Teoría de Lenguajes)|Final del 13/11/19]]
*[[Final del 27/12/18 (Teoría de Lenguajes)|Final del 27/12/18]]
*[[Final del 08/08/18 (Teoría de Lenguajes)|Final del 08/08/18]]
*[[Final del 13/11/17 (Teoría de Lenguajes)|Final del 13/11/17]]
*[[Final del 19/05/17 (Teoría de Lenguajes)|Final del 19/05/17]]
*[[Final del 20/12/16 (Teoría de Lenguajes)|Final del 20/12/16]]
*[[Final del 20/12/16 (Teoría de Lenguajes)|Final del 20/12/16]]
*[[Final del 26/07/16 (Teoría de Lenguajes)|Final del 26/07/16]]
*[[Final del 26/07/16 (Teoría de Lenguajes)|Final del 26/07/16]]
Línea 65: Línea 79:


'''Primeros Parciales'''
'''Primeros Parciales'''
* [[Medio:TLeng_1parcial_23-9-19_resuelto.pdf | Primer Parcial 2C 2019 (Resuelto)]]
* [[Medio:1R1C2019-TLeng.pdf | Primer Recuperatorio 1C 2019 (Resuelto)]]
* [[Medio:1P1C2019-TLeng.pdf | Primer Parcial 1C 2019 (Resuelto)]]
* [https://drive.google.com/open?id=14RYiu__h3BN1z89EniGSeJbEXp8LDpqr 1 Recu 2C 2018]
* [[Medio:1P1C2018-TLeng.pdf ‎| Primer Parcial 1C 2018]]
*Primer Parcial 1C 2017:  [[Media:TLeng_1P_1C_2017.pdf|resolución (pdf)]],
*Primer Parcial 1C 2016:  [[Medio:TLeng 1parcial 30-04-16 ej1.png ‎|ej1]], [[Medio:TLeng 1parcial 30-04-16 ej2.png ‎|ej2]], [[Medio:TLeng 1parcial 30-04-16 ej3.png ‎|ej3]],
*Primer Parcial 1C 2016:  [[Medio:TLeng 1parcial 30-04-16 ej1.png ‎|ej1]], [[Medio:TLeng 1parcial 30-04-16 ej2.png ‎|ej2]], [[Medio:TLeng 1parcial 30-04-16 ej3.png ‎|ej3]],
*[[Primer Parcial 1C 2012 (Teoría de Lenguajes)|Primer Parcial 1C 2012]]
*[[Primer Parcial 1C 2012 (Teoría de Lenguajes)|Primer Parcial 1C 2012]]
Línea 70: Línea 90:


'''Segundos Parciales'''
'''Segundos Parciales'''
* [[Medio:TLeng_2recu_03-08-2020.pdf | Segundo Recuperatorio 1C 2020 (Resuelto)]]
* [[Medio:TLeng_2parcial_16-07-2020.pdf | Segundo Parcial 1C 2020 (Resuelto)]]
* Segundo Parcial 2C 2019 ([[Medio:TLeng_2parcial_2C_2019.pdf |Enunciado]]) ([[Medio:TLeng_2parcial_2C_2019_resolucion.pdf |Resolución]])
* [[Medio:2R1C2019-TLeng.pdf | Segundo Recuperatorio 1C 2019 (Resuelto)]]
* [[Media: Tleng_segundo_parcial_2019_2c.pdf | Segundo Parcial 1C 2019 (resuelto)]]
* [https://drive.google.com/open?id=1fSiOPtR9SA_elpN8TOD08e-Pt0gD8MSo 2 Recu 2C 2018]
* [[Medio:T._Leng._-_2dos_Resueltos.pdf ‎| Segundos parciales resueltos]]
* [[Medio:2P2C2018-TLeng.pdf ‎| Segundo Parcial 1C 2018]]
*Segundo Parcial Recuperatorio 1C 2016: [[Medio:TLeng 2recu 04-07-16 ej1.png ‎|ej1]], [[Medio:TLeng 2recu 04-07-16 ej2.png ‎|ej2]], [[Medio:TLeng 2recu 04-07-16 ej3.png ‎|ej3]]
*Segundo Parcial Recuperatorio 1C 2016: [[Medio:TLeng 2recu 04-07-16 ej1.png ‎|ej1]], [[Medio:TLeng 2recu 04-07-16 ej2.png ‎|ej2]], [[Medio:TLeng 2recu 04-07-16 ej3.png ‎|ej3]]
*Segundo Parcial 1C 2016: [[Medio:TLeng 2parcial 18-06-16 ej3.png ‎|ej3]]
*Segundo Parcial 1C 2016: [[Medio:TLeng 2parcial 18-06-16 ej3.png ‎|ej3]]
Línea 89: Línea 117:
*[http://oscarbonilla.com/courses/compilers/ Slides de un curso de compiladores de Oscar Bonilla]
*[http://oscarbonilla.com/courses/compilers/ Slides de un curso de compiladores de Oscar Bonilla]
*[http://smlweb.cpsc.ucalgary.ca/ Context-Free Grammar Tool]: La Victorinox de las gramáticas libres de contexto. Genera todo tipo de autómatas y tablas y chequea muchas propiedades.
*[http://smlweb.cpsc.ucalgary.ca/ Context-Free Grammar Tool]: La Victorinox de las gramáticas libres de contexto. Genera todo tipo de autómatas y tablas y chequea muchas propiedades.
*[https://www.youtube.com/playlist?list=PLEbnTDJUr_IcPtUXFy2b1sGRPsLFMghhS Diseño de compiladores]: Clases para varios de los temas del segundo parcial.


[[Category:Materias]]
[[Category:Materias]]
[[Category:Computación]]
[[Category:Computación]]
[[Category:Programación]]
[[Category:Programación]]

Revisión del 04:20 14 ago 2020

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 según el plan de la carrera, debería cursarse en Cuarto Año. Es correlativa de Lógica y Computabilidad. Se cursa los Lunes, Miércoles 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

Ejercicios Resueltos

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

Ver en Demostraciones (Teoría de Lenguajes) la nota sobre demostración de lema de pumping para LLC, lo toman siempre.

Parciales

Primeros Parciales

Segundos Parciales

Trabajos Prácticos Viejos

Enlaces externos