PROGRAMA DE LABORATORIO POS-REQUISITO: Primer Semestre 2019 Ing. Mario José Bautista Fuentes AUXILIAR: Nery Galvez

Documentos relacionados
PROGRAMA DE LABORATORIO SECCIÓN: ÁREA A LA QUE PERTENECE: POS-REQUISITO: AUXILIAR:

NOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2 CÓDIGO: 781 CRÉDITOS: 5 ÁREA A LA QUE PERTENECE: POST-REQUISITO:

NOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2 CÓDIGO: 781 CRÉDITOS: 5 ÁREA A LA QUE PERTENECE:

NOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2 CÓDIGO: 781 CRÉDITOS: 5 ÁREA A LA QUE PERTENECE: POST- REQUISITO:

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS. NOMBRE DEL CURSO: Lenguajes Formales y de Programación

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación

UNIVERSIDAD DE GUADALAJARA

Pontificia Universidad Católica del Ecuador


Programa Educativo: Licenciatura en Ciencias PROGRAMA DE ESTUDIO. Obligatoria Programa elaborado por:

NOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2

Nombre de la Unidad de Aprendizaje. Clave de la UA Modalidad de la UA Tipo de UA Valor de créditos Área de formación

Se impartirán clases presenciales para fortalecer el conocimiento de las distintas estructuras de datos

NOMBRE DEL CURSO: Organización de Lenguajes y Compiladores 2

DOMINIOS COGNITIVOS (Objetos de estudio, temas y subtemas)

Guía Docente. Tipo: Obligatoria Créditos ECTS: 6. Curso: 4 Código: 3639

Horas teóricas: Horas practicas: Área de conocimiento a la que pertenece

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO

BENÉMERITA UNIVERSIDAD AUTÓNOMA DE PUEBLA VICERRECTORÍA DE DOCENCIA DIRECCIÓN GENERALDE EDUCACIÓN SUPERIOR FACULTAD DE CIENCIAS DE LA COMPUTACIÓN

Ciencias y Sistemas AREA: CATEGORIA: Obligatorio SECCION: B HORAS POR SEMANA DEL CURSO: POSTREQUISITO: Sabado Jueves DIAS DE

Laboratorio de Introducción a la Programación y Computación 2 POST REQUISITO:

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA ESCUELA DE CIENCIAS Y SISTEMAS. CÓDIGO: 771 CRÉDITOS: 5 ESCUELA: Ciencias y Sistemas ÁREA A LA QUE PERTENECE:

Campos Fecha de elaboración: 28 de Mayo de 2010 Fecha de última actualización:

NOMBRE DEL CURSO: Introducción a la Programación y computación 1

Programa de Estudios por Competencias COMPILADORES

ANX-PR/CL/ GUÍA DE APRENDIZAJE

Universidad Ricardo Palma Facultad de Ingeniería

ANX-PR/CL/ GUÍA DE APRENDIZAJE. ASIGNATURA Procesadores de lenguajes. CURSO ACADÉMICO - SEMESTRE Segundo semestre

NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación

ANX-PR/CL/ GUÍA DE APRENDIZAJE

UNIVERSIDAD DE LOS LLANOS Facultad de Ciencias Básicas e Ingeniería Programa Ingeniería de Sistemas ALGORITMIA AVANZADA

BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD CIENCIAS DE LA COMPUTACIÓN

UNIVERSIDAD DE GUADALAJARA

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)

Benemérita Universidad Autónoma de Puebla Vicerrectoría de Docencia Dirección General de Educación Superior Facultad de Ciencias de la Computación

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO. Licenciatura en Ciencias de la Computación. Facultad de Ciencias. Programa de la asignatura.

DATOS DE IDENTIFICACIÓN DEL CURSO

INSTITUTO POLITÉCNICO NACIONAL SECRETARÍA ACADÉMICA DIRECCIÓN DE ESTUDIOS PROFESIONALES EN INGENIERÍA Y CIENCIAS FÍSICO MATEMÁTICAS

Compiladores e Intérpretes

División Académica de Informática y Sistemas

PROCESADORES DEL LENGUAJE I

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 3.

GUÍA DE APRENDIZAJE TEORÍA DE LENGUAJES DE PROGRAMACIÓN GRADUADO EN INGENIERÍA DE COMPUTADORES

INTELIGENCIA ARTIFICIAL 1

INSTITUTO POLITECNICO NACIONAL SECRETARIA ACADEMICA DIRECCION DE ESTUDIOS PROFESIONALES EN INGENIERIA Y CIENCIAS FISICO MATEMATICAS

Nombre de la Unidad de Aprendizaje. Clave de la UA Modalidad de la UA Tipo de UA Valor de créditos Área de formación

ANX-PR/CL/ GUÍA DE APRENDIZAJE. ASIGNATURA Traductores de lenguajes de programacion. CURSO ACADÉMICO - SEMESTRE Segundo semestre

Programa de la asignatura Curso: 2008 / 2009 AUTÓMATAS Y LENGUAJES FORMALES (1314)

ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA GRADO DE INGENIERÍA INFORMÁTICA. Curso 2016/17. Asignatura: PROCESADORES DE LENGUAJES

PRESENTACIÓN Y CONTEXTUALIZACIÓN

CODIGO: 722 CREDITOS: 5 POST REQUISITOS: CATEGORIA: Obligatorio SEMESTRE: 2do. semestre 2014

Cátedra de Sintaxis y Semántica de Lenguajes

GUÍA DOCENTE Procesadores de Lenguajes

Descriptor. Máquinas secuenciales y autómatas finitos. Gramáticas y lenguajes formales. Construcción de intérpretes y compiladores.

INSTITUTO POLITECNICO NACIONAL SECRETARIA ACADEMICA DIRECCION DE ESTUDIOS PROFESIONALES EN INGENIERIA Y CIENCIAS FISICO MATEMATICAS

Concepto de compilador Intérprete Fases de un Compilador Herramientas de construcción de Compiladores

PROCESADORES DEL LENGUAJE I

CÓDIGO: 773 CRÉDITOS: 4 POST REQUISITO: CATEGORÍA: Obligatorio SEMESTRE: 1er AUXILIAR:

Nombre de la asignatura: Lenguajes y Autómatas I. Créditos: Aportación al perfil

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 2.

Introducción al Diseño de Compiladores. Año

Tema: Análisis Sintáctico

INTELIGENCIA ARTIFICIAL 1

PROCESADORES DEL LENGUAJE II

INSTITUTO POLITÉCNICO NACIONAL

DESCRIPCIÓN DEL CURSO:

GUÍA DOCENTE DE PROYECTO DE AUTÓMATAS Y LENGUAJES

PROCESADORES DEL LENGUAJE II

Análisis sintáctico Analizadores descendentes

1. Preparar al estudiante para desarrollar aplicaciones de software utilizando un enfoque orientado a objetos.

1. Preparar al estudiante para desarrollar aplicaciones de software utilizando un enfoque orientado a objetos.

Tema 6: Compiladores e intérpretes. Teoría de autómatas y lenguajes formales I

DES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia:

Procesadores de Lenguajes

Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I

Compiladores: Sesión 15. Análisis semántico, traducción dirigida por sintaxis

Procesadores de lenguaje Tema 1 Introducción a los compiladores

Introducción a los compiladores

AMBIENTES DE COMPILACION

ASIGNATURA: COMPILADORS (EUIS-UAB) Aula Teoría Martes 23 Problemas Viernes Aula 23. Profesor Consultas

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA ESCUELA DE CIENCIAS, DEPARTAMENTO DE MATEMÁTICA

Presentación de la Asignatura

TITULACIÓN Ingeniero Técnico en Informática de Sistemas ASIGNATURAS DE SEGUNDO CURSO DEL PLAN 1999 TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES PROGRAMA:

GUÍA DOCENTE 2017/2018. Algoritmos y Estructuras de Datos Grado en INGENIERÍA INFORMÁTICA 2º curso. Modalidad Presencial

METACOMPILADOR DIDÁCTICO GENERADOR DE CÓDIGO JAVA

ISBPR1: Programación 1

uco.es/grados GUÍA DOCENTE DENOMINACIÓN DE LA ASIGNATURA DATOS DEL PROFESORADO REQUISITOS Y RECOMENDACIONES COMPETENCIAS OBJETIVOS

UNIVERSIDAD DE SAN C ARLOS DE GUATEMALA FACULTAD DE INGENIER IA ESCUELA DE CIENCIAS Y SISTEMAS PROGRAMA DEL CURSO: SISTEMAS DE BASES DE DATOS 2

Benemérita Universidad Autónoma de Puebla Vicerrectoría de Docencia Dirección General de Educación Superior Facultad deciencias de la Computación

Transcripción:

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA ESCUELA DE CIENCIAS PROGRAMA DE LABORATORIO CÓDIGO: 777 CRÉDITOS: 4 Organización de NOMBRE CURSO: Lenguajes y SECCIÓN: A Compiladores 1 ESCUELA: Ciencias y Sistemas ÁREA A LA QUE Ciencias de la PRE-REQUISITO: 771 Introducción a la Programación y Computación 796 Lenguajes Formales y de Programación 962 Matemática para Computación 2 PERTENECE: POS-REQUISITO: CATEGORÍA: Obligatorio SEMESTRE: CATEDRÁTICO (A): Computación 781 Organización de Lenguajes y Compiladores 2 2036 Practicas Intermedias Primer Semestre 2019 Ing. Mario José Bautista Fuentes AUXILIAR: Nery Galvez EDIFICIO: T-3 EDIFICIO: T-3 SALÓN DEL CURSO: 113 HORAS POR SEMANA DEL CURSO: DÍAS QUE SE IMPARTE EL CURSO: HORARIO DEL CURSO: DESCRIPCIÓN DEL SALÓN DE HORAS POR 4 SEMANA DEL 2 DÍAS QUE SE 309 Sábado IMPARTE EL Lunes 10:30 AM 13:50 PM HORARIO DEL 10:50 AM 12:30 PM El laboratorio del curso de Organización de Lenguajes y Compiladores 1, trata sobre la parte práctica del curso con la aplicación de las primeras fases del compilador, la fase de análisis que incluye lo que es análisis lexicográfico, análisis sintáctico y la introducción al análisis semántico, también se incluye el manejo de errores y de la tabla de símbolos. OBJETIVO GENERAL: Poner en práctica los elementos que conforman el análisis y la síntesis en el proceso de compilación con el uso de los diferentes tipos de herramientas de compilación

OBJETIVOS ESPECÍFICOS: 1. Que el estudiante aprenda en detalle las primeras fases del proceso de compilación, principalmente el análisis lexicográfico y el análisis sintáctico. 2. Aprender a desarrollar aplicaciones que compilen una entrada determinada y ejecutar dicho código para obtener salidas del programa hacia el usuario. 3. Crear proyectos de innovación descubriendo detrás de los mismos el proceso de compilación de un programa. 4. Fomentar en el estudiante el análisis en la resolución de problemas complejos en la lectura de entradas determinadas para un compilador. HABILIDADES: 1. Comprensión de la estructura y funciones de un compilador. 2. Compresión de las estructuras de datos utilizadas en el proceso de compilación y su relación con las distintas fases del compilador. 3. Comprensión de la importancia y el manejo de errores en la construcción se software. 4. Comprensión de la relación entre hardware y software durante la ejecución de un programa computacional. COMPETENCIAS: 1. Dominar los conceptos básicos de compiladores. 2. Elegir con criterio la manera óptima de codificar una solución informática. 3. Aplicar herramientas de análisis léxico y sintáctico para la resolución de problemas. 4. Crear soluciones funcionales aplicando los conceptos de compiladores. METODOLOGÍA: 1. Clases para la explicación de conceptos, resolución de ejercicios prácticos y resolución de dudas. 2. Elaboración de tareas, hojas de trabajo, exámenes cortos, practicas, proyectos EVALUACIÓN DEL RENDIMIENTO ACADÉMICO: el laboratorio tiene una ponderación de 40 sobre la nota final del curso, distribuido de la siguiente manera 3 Hojas de Trabajo 1% c/u 3% 2 Exámenes cortos 2.5% c/u 5% Tareas, Investigaciones, etc. 5% 2 Practicas 10% c/u 20% Proyecto 1 22% Proyecto 2 35% Examen Final 10% TOTAL 100%

OBSERVACIONES: 1. La calificación de prácticas y proyectos de laboratorio es personal acoplándose al día y horario que se indique previamente. 2. Copias parciales o totales de prácticas o proyectos tendrán una nota de 0 puntos y los responsables serán reportados a la Escuela de Ciencias y Sistemas. 3. Todas las tareas e investigaciones que sean identificadas como copias parciales o tendrán una nota de 0 puntos. 4. Para aprobar el laboratorio se debe tener una nota final igual o mayor a 61 puntos. CONTENIDO: 1. INTRODUCCIÓN A LA COMPILACIÓN 1.1. Conceptos generales de compiladores 1.1.1. Definición de compilador 1.1.2. Definición de interprete 1.1.3. Diferencias entre compilador e interprete 1.2. Tipos de Compiladores 1.3. Fases de Análisis 1.4. Fases de Síntesis 2. ANÁLISIS LÉXICO Y SINTÁCTICO 2.1 ANÁLISIS LÉXICO 2.1.1. Definición. 2.1.2. Componentes: Token, Lexema, Patrón (Expresiones Regulares) 2.1.3. Autómatas (Método del Árbol, método de Thompson) 2.1.4. Manejo de errores léxicos 2.2 ANÁLISIS LÉXICO 2.2.1 Definición 2.2.3 Gramáticas independientes del contexto (Libres del contexto) 2.2.4 Derivación 2.2.4 Árbol de Análisis Sintáctico 3. MODULO HERRAMIENTA JFLEX Y CUP 3.1 Instalación 3.2 Definición de expresiones y Gramática, 3.3 Implementación de archivos.flex y.cup 3.4 Descripción de las clases generadas. 3.5 Implementación de acciones. 3.6 Manejo de Errores. 4. GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO 4.1 Definición 4.2 Funciones Primero y Siguiente 4.3 GRAMÁTICAS DESCENDENTES 4.3.1 Definición 4.3.2 Algoritmos de familia LL( k) 4.3.3 Ejemplos 4.4 Re-escritura gramaticales 4.4.1 Supresión de ambigüedad 4.4.2 Factorización

4.4.3 Eliminación de recursividad por la izquierda 4.5 GRAMÁTICAS ASCENDENTES 4.5.1 Definición 4.5.2 Algoritmos de familia LR(k) 4.5.3 Ejemplos 5. MODULO HERRAMIENTAS FLEX/BISON 5.1 FLEX 5.1.1 de usuario 5.1.2 Directivas del analizador 5.1.3 Declaraciones y definiciones de Expresiones regulares y estados 5.1.4 Reglas léxicas 5.2 BISON 5.2.1 Código de usuario 5.2.2 Declaraciones, definiciones símbolos gramaticales, precedencia y asociativo 5.2.3 Definición de gramáticas 5.2.4 Manejo de errores 6. MODULO HERRAMIENTA IRONY 6.1 Descarga, Instalación, Compilación 6.2 Sintaxis de escritura de expresiones regulares y gramáticas 6.3 Comunicación con el entorno de programación 6.4 Acciones gramaticales 6.5 Manejo de Errores 7. TABLA DE SÍMBOLOS Y MANEJO DE ERRORES 7.1 Definición 7.2 Estructura 7.3 Operaciones con la tabla de símbolos 7.4 Técnicas de manejo y recuperación de errores 8. REPRESENTACIÓN DE CÓDIGO DE UNA GRAMÁTICA 8.1 Traducción dirigida por la sintaxis 8.1.1 Definición dirigida por la sintaxis 8.1.2 Atributos sintetizados 8.1.3 Atributos heredados 8.2 Construcción de Arboles de sintaxis abstracta (AST) 8.3 Ejecución de código

CALENDARIZACIÓN DE ACTIVIDADES: 1. Primera práctica: 1.1. Publicación de enunciado: Jueves 7 de febrero.. 1.2. Explicación: Lunes 11 de Febrero. 1.3. Entrega: Viernes 22 de Febrero. 2. Primer Proyecto: 2.1. Publicación de enunciado: Viernes 22 de Febrero 2.2. Explicación: Lunes 25 de Febrero 2.3. Entrega: Jueves 21 de Marzo 3. Segunda práctica: 3.1. Publicación de enunciado: Jueves 21 de Marzo 3.2. Explicación: Lunes 25 de Marzo 3.3. Entrega: Jueves 4 de Abril 4. Segundo Proyecto: 4.1. Publicación de enunciado: Jueves 4 de Abril 4.2. Explicación: Lunes 8 de Abril 4.3. Entrega: Jueves 2 de Mayo 5. Examen Final: 5.1. Viernes 3 de Mayo 6. Conferencia: 6.1. La fecha de dará en el trascurso del laboratorio 7. Tareas, Hojas de Trabajo, Exámenes Cortos de laboratorio: 7.1. Las fechas se darán en el transcurso del laboratorio BIBLIOGRAFÍA: 1. Principios, Técnicas y Herramientas Aho, Sethi y Ullmam. PEARSON ADDISON- WESLEY, 2008, 2da. Edición