UNIVERSIDAD DE SAN CARLOS DE GUATEMALA
FACULTAD DE INGENIERIA
ESCUELA DE CIENCIAS Y SISTEMAS
PROGRAMA DE LABORATORIO DEL CURSO: Lenguajes Formales y de Programación.
No. Descripción
. Código 796 Créditos 3
1
Escuela Área a la que pertenece Vigencia
Ciencias y Sistemas Ciencias de la computación Primer Semestre 2019
https://dtt-ecys.org
2 Horas clase Horario Laboratorio
Martes 7;10-8:50 Martes 9;00 a 10:40
3 Pre-requisitos:
770 Introducción a la Programación 1
795 Lógica de sistemas
960 Matemática de Cómputo 1
4 Postrequistios:
777 Organización de lenguajes y compiladores 1
772 Estructuras de datos
5 Sección: B+
6 I. Descripción General
Este curso busca introducir al estudiante con los fundamentos teóricos matemáticos y conceptos que
fundamentan los lenguajes de programación. El estudiante debe adquirir la base teórica necesaria y requerida
para que pueda llevar un curso avanzado de lenguajes y compiladores.
Se busca, además, definir los modelos matemáticos asociados a la representación de los diferentes tipos de
lenguajes para luego implementar estos conceptos en lenguajes de programación.
Es de primordial importancia que pueda reconocer cualquier tipo de gramática, pero sobre todo, pueda manejar
y diseñar gramáticas para lenguajes regulares y para lenguajes libres de contexto, además, de los modelos
matemáticos que las resuelven. Se busca que el estudiante tenga mucha práctica en el diseño de gramáticas
para representar lenguajes y que adquiera la habilidad de diseñarlas sin problema. Adquiriendo conceptos y los
pueda relacionar a los aspectos técnicos y prácticos conociendo su aplicación en lenguajes reales conocidos.
El estudiante debe aprender la teoría que esta atrás de los diferentes componentes de un compilador, las
técnicas de programación usadas para poner esta teoría en practica,
Al finalizar el curso el estudiante estará en la capacidad de poder recibir un curso avanzado de compiladores.
II. Objetivos
Objetivo General
Que el estudiante tenga los conceptos teóricos y matemáticos necesarios, que fundamentan los
lenguajes de programación y el diseño de lenguajes y compiladores.
Objetivos Específicos
Al final del curso el estudiante deberá:
1. Definir cualquier lenguaje formal.
2. Reconocer las características que identifican a cualquier tipo de gramática.
3. Manejar la terminología de los lenguajes y compiladores.
4. Conocer el modelo matemático que resuelve cada tipo de gramática.
5. Diseñar gramáticas que representen lenguajes específicos
6. Conocer el funcionamiento de un analizador léxico y su implementación
7. Conocer e implementar máquinas de estado finito
8. Diseñar e implementar gramáticas libres de contexto
9. Conocer los conceptos que fundamentan el análisis sintáctico
10. Aplicar los modelos matemáticos que resuelven cualquier gramática
Aho, Alfred
V., Sethi y
Ullman.
Compilado
res:
principios,
técnicas y
herramient
as.
Addison-
Wesley.
IV. Metodología:
El laboratorio será impartido 1 ves por semana, con implementación de material de apoyo que se le brindará
a los estudiantes.
Se impartirán clases prácticas y teóricas para profundizar en los conocimientos de los estudiantes.
Resolución de problemas durante y fuera del laboratorio.
Elaboración de prácticas y proyectos.
Evaluación del conocimiento mediante tareas, cortos y examen final.
V. Evaluación:
La nota final del laboratorio estará compuesta de 100 puntos, distribuidos de la siguiente manera:
Tareas 10 pts.
Hojas de trabajo 10pts
Cortos 15 pts.
Práctica 20 pts.
Proyectos 35 pts.
Examen Final 10 pts.
Total _______ 100 pts.
VI. Observaciones:
• Será necesario contar con al menos un 81% de asistencia y aprobar el laboratorio del curso con una
nota mínima de 61 puntos como mínimo.
7 Bibliografía 1. L. Espino. Lenguajes Formales y Autómatas, 2015, Guatemala.
Brookshear, J. Glenn. Teoría de la Computación - Lenguajes formales,
2.
autómatas y complejidad. Addison-Wesley Iberoamericana.
Andrew W. Appel. Modern Compiler Implementation in Java. Second
3.
Edition. Cambridge University Press.
4. Aho, Alfred V., Sethi y Ullman. Compiladores: principios, técnicas y
herramientas. Addison-Wesley.
8 No. De Secciones 4
9 Catedrático titular Sección B+ Ing. Luis Fernando Espino Barrios
[email protected]10 Auxiliar de catedra Otto Guarchaj – [email protected]
11 Director de Escuela Ing. Marlon Pérez Türk