Profs. Carlos Pérez y Ricardo Monascal
|
|
|
- Belén García Velázquez
- hace 9 años
- Vistas:
Transcripción
1
2 TRADUCTORES E INTERPRETADORES Clase 0: Introducción al Curso
3 Quiénes somos? Prof. Carlos Pérez Prof. Ricardo Monascal Oficina: MYS-228A (Sí, es la misma)
4 Recursos Oficiales Página del curso: Bibliografía (en orden alfabético): Sudkamp. Languages and Machines. Addison-Wesley Publishing Hopcroft & Ullman. Introduction to Automata Theory, Languages and Computation. Addison-Wesley Publishing. Aho, Sethi & Ullman. Compilers: Principles, Techniques and Tools. Addison-Wesley Publishing. Sipser. Introduction to the Theory of Computation. 2nd edition. MIT Press. Astorga. Apuntes sobre Lenguajes Regulares. USB. En:
5 Evaluación 70% teoría Examen 1 (25%): Martes, Semana 5. Examen 2 (20%): Martes, Semana 8. Examen 3 (25%): Martes, Semana % práctica Un proyecto, en tres entregas: Entrega 1 (6%): Domingo, Semana 3 4. Entrega 2 (9%): Domingo, Semana 6 7. Entrega 3 (15%): Domingo, Semana
6 Y además Cinco retos, principalmente de programación, que otorgarán al ganador de cada reto (y únicamente al ganador del mismo) 2% adicional sobre el total del curso.
7 Motivación Todo es un lenguaje!
8 Motivación Todo es un lenguaje!
9 Jerarquía de Chomsky REGULARES
10 LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES
11 SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES
12 RECUSRIVO SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES
13 RECUSRIVAMENTE ENUMERABLE RECUSRIV0 SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES
14 RECUSRIVAMENTE ENUMERABLE RECUSRIV0 SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky Y HABRÁ MÁS? REGULARES
15 Lenguajes de Programación Qué es un lenguaje de programación? Dónde entran en la jerarquía? Programa? MAQUINA
16 Lenguajes de Programación MAQUINA Programa ENTENDER PROCESAR?
17 Lenguajes de Programación MAQUINA Programa ENTENDER PROCESAR? FRONT-END BACK-END
18 Lenguajes de Programación FRONT-END Programa Análisis Léxico (Lexer) Análisis Sintáctico (Parser) Análisis de Contexto Representación Intermedia
19 Lenguajes de Programación FRONT-END Programa Representación Intermedia Secuencia de caracteres Análisis Léxico (Lexer) Secuencia de Tokens.c [int, id(main),...]
20 Lenguajes de Programación FRONT-END Programa Representación Intermedia Secuencia de Tokens [int, id(main),...] Análisis Sintáctico (Parser) Árbol Sintáctico Abstracto
21 Lenguajes de Programación FRONT-END Programa Representación Intermedia Árbol Sintáctico Abstracto Análisis de Contexto Árbol Sintáctico Abstracto (Decorado)
22 Lenguajes de Programación Código en otro lenguaje Representación Intermedia BACK-END Ejecución
23 Lenguajes de Programación Representación Intermedia BACK-END Código en otro lenguaje Traducción vs. Compilación Ejecución Interpretación
24 Léxico Básico del Curso Símbolo: Unidad léxica indivisible que representa algún significado. Caracteres Ideogramas Tokens Alfabeto: Conjunto de símbolos Alfabeto latino Palabras reservadas de un lenguaje
25 Léxico Básico del Curso Frases: Secuencia de símbolos, todos pertenecientes a algún alfabeto Σ Hola, mundo!, sobre el alfabeto latino con signos de puntuación. 42, sobre el alfabeto de los números arábigos 自動機的岩石, sobre el alfabeto chino...
26 Léxico Básico del Curso Frases: Secuencia de símbolos, todos pertenecientes a algún alfabeto Σ Hola, mundo!, sobre el alfabeto latino con signos de puntuación 42, sobre el alfabeto de los números arábigos 自動機的岩石, sobre el alfabeto chino... sobre cualquier alfabeto.
27 Léxico Básico del Curso Frases: Secuencia de símbolos, todos pertenecientes a algún alfabeto Σ Hola, mundo!, sobre el alfabeto latino con signos de puntuación 42, sobre el alfabeto de los números arábigos 自動機的岩石, sobre el alfabeto chino... sobre cualquier alfabeto. Y lo llamaremos λ.
28 Léxico Básico del Curso Lenguaje: Conjunto de frases, todas compuestas por símbolos pertenecientes al mismo alfabeto Σ Frases, sobre el alfabeto Σ = {a, b}, que contengan al menos un símbolo a. Expresiones aritméticas válidas, sobre el alfabeto Σ = {+, -, *, /} U {0..9} Ø, sobre cualquier alfabeto. {λ}, sobre cualquier alfabeto.
29 Léxico Básico del Curso Lenguaje: Conjunto de frases, todas compuestas por símbolos pertenecientes al mismo alfabeto Σ Frases, sobre el alfabeto Σ = {a, b}, que contengan al menos un símbolo a. Expresiones aritméticas válidas, sobre el alfabeto Σ = {+, -, *, /} U {0..9} Ø, sobre cualquier alfabeto. {λ}, sobre cualquier alfabeto. Y son distintos!
30 Objetivo del Curso Cómo especificar lenguajes? Es una frase perteneciente a un lenguaje? Cómo aplicar estos conceptos al procesamiento de lenguajes de programación?
Tema 1: Introducción. Teoría de autómatas y lenguajes formales I
Tema 1: Introducción Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación. Addison Wesley.
Texto: Hopcroft, J. E., Motwani, R., Ullman, J.D., Introduction to Automata Theory, Languajes, and Computation. 3rd Edition. Addison Wesley, 2007.
Universidad de Puerto Rico Recinto de Mayagüez Facultad de Artes y Ciencias DEPARTAMENTO DE CIENCIAS MATEMÁTICAS Programa de Autómata y Lenguajes Formales Curso: Autómata y Lenguajes Formales Codificación:
Introducción al Diseño de Compiladores. Año
Introducción al Diseño de Compiladores Año 2003 1 BIBLIOGRAFÍA [AHO] Compilers. Principles, Techniques, and Tools Aho, Sethi; Adisson-Wesley 1986 [TEU] Compiladores: Conceptos fundamentales. Teufel ; Addison
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA) FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS 1. INFORMACIÓN GENERAL
Procesadores de lenguaje Tema 1 Introducción a los compiladores
Procesadores de lenguaje Tema 1 Introducción a los compiladores Salvador Sánchez, Daniel Rodríguez Departamento de Ciencias de la Computación Universidad de Alcalá Resumen del tema Traductores Estructura
Procesadores de lenguaje Tema 1: Introducción a los compiladores
Procesadores de lenguaje Tema 1 Introducción a los compiladores Salvador Sánchez, Daniel Rodríguez Departamento de Ciencias de la Computación Universidad de Alcalá Resumen del tema Traductores Estructura
PROGRAMA DE COMPILADORES
1. Introducción 1.1. Tipos de traductores 1.2. Autómatas 1.3. Gramáticas formales 1.4. Fases de un compilador PROGRAMA DE COMPILADORES 2. Análisis Léxico 2.1. Definir un reconocedor de cadenas no trivial
Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I
Tema 4: Gramáticas independientes del contexto Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación.
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO COMPILADORES 1764 7 o 09 Asignatura Clave Semestre Créditos Ingeniería Eléctrica Ingeniería en Computación Ingeniería
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS. NOMBRE DEL CURSO: Lenguajes Formales y de Programación
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Lenguajes Formales y de Programación CÓDIGO: 796 CRÉDITOS: 3 ESCUELA: Ciencias y Sistemas
PROGRAMA DE COMPILADORES
PROGRAMA DE COMPILADORES 1. Introducción 1.1. Tipos de traductores 1.2. Autómatas 1.3. Gramáticas formales 1.4. Fases de un compilador 2. Análisis Léxico 2.1. Definir un reconocedor de cadenas no trivial
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO LENGUAJES FORMALES Y AUTÓMATAS 1670 6 09 Asignatura Clave Semestre Créditos Ingeniería Eléctrica Ingeniería en Computación
NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación CODIGO: 796 CREDITOS: 3 ESCUELA: Ciencias
PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS
PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS 1. DATOS INFORMATIVOS MATERIA: DISEÑO DE LENGUAJES Y AUTOMATAS: CARRERA: INGENIERÍA DE SISTEMAS NIVEL:
Compiladores: Sesión 3. Análisis léxico, expresiones regulares
Compiladores: Sesión 3. Análisis léxico, expresiones regulares Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad Javeriana Cali 29 de enero de
Pontificia Universidad Católica del Ecuador
1. DATOS INFORMATIVOS: MATERIA O MÓDULO: COMPILADORES E INTERPRETES CÓDIGO: 10730 CARRERA: NIVEL: SISTEMAS QUINTO No. CRÉDITOS: 4 CRÉDITOS TEORÍA: 4 CRÉDITOS PRÁCTICA: - SEMESTRE / AÑO ACADÉMICO: 2 / 2010
ESCUELA: UNIVERSIDAD DEL ISTMO
1.-IDENTIFICACIÓN ESCUELA: UNIVERSIDAD DEL ISTMO CLAVE: 3041 GRADO: ING. EN COMPUTACIÓN, CUARTO SEMESTRE TIPO DE TEÓRICA/PRÁCTICA ANTECEDENTE CURRICULAR: 3033.- OBJETIVO GENERAL Proporcionar al alumno
Compiladores: Introducción
Compiladores: Introducción Francisco J Ballesteros LSUB, URJC Page 1 of 28 Qué es un lenguaje de programación? C, Java, Go,... Pero también ls *.c grep '^[a-z].*\.8' printf("%s %d",...) Page 2 of 28 Cómo
LP - Lenguajes de Programación
Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona Unidad que imparte: 723 - CS - Departamento de Ciencias de la Computación Curso: Titulación: 2016 GRADO EN INGENIERÍA INFORMÁTICA (Plan
SÍLABO DEL CURSO DE COMPILADORES Y LENGUAJES DE PROGRAMACIÓN
SÍLABO DEL CURSO DE COMPILADORES Y LENGUAJES DE PROGRAMACIÓN I. INFORMACIÓN GENERAL 1.1 Facultad Ingeniería 1.2 Carrera Profesional Ingeniería en Sistemas Computacionales 1.3 Departamento 1.4 Requisito
Teoría de Autómatas y Lenguajes Formales Equivalencia de Conjuntos Pruebas por Inducción
y Lenguajes INAOE y (INAOE) 1 / 40 Contenido y 1 2 3 4 5 6 y (INAOE) 2 / 40 Objetivo General Proporcionar al estudiante los fundamentos de la teoría de autómatas así como los de lenguajes formales. También
ASIGNATURA: COMPILADORS (EUIS-UAB) Aula Teoría Martes 23 Problemas Viernes Aula 23. Profesor Consultas
Pàgina 1 de 8 Enginyeria Tècnica Informàtica Escola Universitària de Sabadell (UAB) 6è Semestre Curso 2005-20 Créditos Horarios Teoria y Problemas 3 Aula Teoría Martes 23 Problemas Viernes Aula 23 11:00
División Académica de Informática y Sistemas
Área de formación Sustantiva Profesional Nombre de la asignatura Docencia frente a grupo según SATCA Trabajo de Campo Supervisado según SATCA HCS HPS TH C HTCS TH C TC 2 2 4 4 0 0 0 4 Clave de la asignatura
Coordinación de Ciencias Computacionales INAOE. Teoría de Autómatas y Lenguajes Formales. Temario detallado para examen de ingreso 2012
Coordinación de Ciencias Computacionales INAOE Teoría de Autómatas y Lenguajes Formales Temario detallado para examen de ingreso 2012 1. Autómatas 1.1. Por qué estudiar la teoría de autómatas? 1.1.1. Introducción
Gramáticas de Atributos
Teoría de Lenguajes Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Etapas de un Compilador Analizador Léxico Analizador Sintáctico (Parser)... Lexer: Genera secuencia de tokens Reporta
Procesadores de Lenguaje
Procesadores de Lenguaje Repaso TALF Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 La Jerarquía de Chomsky Cuatro niveles de lenguajes formales
NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS NOMBRE DEL CURSO: Laboratorio de Lenguajes Formales y de Programación CODIGO: 796 CREDITOS: 3 ESCUELA: Ciencias
Conceptos básicos sobre gramáticas
Procesamiento de Lenguajes (PL) Curso 2014/2015 Conceptos básicos sobre gramáticas Gramáticas y lenguajes Gramáticas Dado un alfabeto Σ, un lenguaje es un conjunto (finito o infinito) de cadenas de símbolos
16 Análisis sintáctico I
2 Contenido Recordando la estructura de un compilador Recordando el análisis léxico l análisis sintáctico Comparación con el análisis léxico l Rol del Parser Lenguajes de programación Gramáticas structura
Introducción a la Lógica y la Computación
Introducción a la Lógica y la Computación Parte III: Lenguajes y Autómatas Clase del 7 de Noviembre de 2014 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/20 Lenguajes Formales
INTRODUCCIÓN A LOS LENGUAJES
INTRODUCCIÓN A LOS LENGUAJES 1 Definición de lenguaje 2 Lenguajes formales 2.1 Requisitos 2.2 Aplicaciones 2.3 Especificación 2.4 Gramáticas 2.4.1 Definición y Ejemplos 2.4.2 Ambigüedad 2.4.3 Clasificación
Programa del curso IC-5701. Compiladores e Intérpretes. Escuela de Computación. Carrera de Ingeniería de Computación, Plan 410.
Programa del curso IC-5701 Compiladores e Intérpretes Escuela de Computación Carrera de Ingeniería de Computación, Plan 410. I Parte. Aspectos relativos al plan de estudios 1 Datos generales Nombre del
Introducción a la Lógica y la Computación
Introducción a la Lógica y la Computación Parte III: Lenguajes y Autómatas Clase del 4 de Noviembre de 2015 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/21 Lenguajes Formales
PROGRAMA DE COMPILADORES
1. Introducción 1.1. Tipos de traductores 1.2. Autómatas 1.3. Gramáticas formales 1.4. Fases de un compilador PROGRAMA DE COMPILADORES 2. Análisis Léxico 2.1. Definir un reconocedor de cadenas no trivial
Teoría de Lenguajes. Propiedades y caracterizaciones de los lenguajes incontextuales
Teoría de Lenguajes Propiedades y caracterizaciones de los lenguajes incontextuales José M. empere Departamento de istemas Informáticos y Computación Universidad Politécnica de Valencia Propiedades y caracterizaciones
Práctica 01 - Preprocesamiento básico para un código fuente en lenguaje C Compiladores - Profr. Edgardo Adrián Franco Martínez
2 Contenido Introducción Análisis léxico Funciones del analizador léxico Preprocesamiento básico de un código fuente de C Manejo de búferes 3 Introducción Para la construcción de todo traductor, compilador
Tema 3: Gramáticas regulares. Teoría de autómatas y lenguajes formales I
Tema 3: Gramáticas regulares Teoría de autómatas y lenguajes formales I Bibliografía Hopcroft, J. E., Motwani, R., y Ullman, J. D. Introducción a la Teoría de Autómatas, Lenguajes y Computación. Addison
Teoría de la Computación y Leguajes Formales
y Leguajes Formales Prof. Hilda Y. Contreras Departamento de Computación [email protected] [email protected] Contenido Tema 0: Introducción y preliminares: Conocimientos matemáticos
Compilación. Jaime Gutiérrez Alfaro Compiladores e Intérpretes. II semestre,
Compilación Jaime Gutiérrez Alfaro Compiladores e Intérpretes II semestre, 2017 1 Agenda 2. Compilación Estructura del proceso de compilación Estructuras de datos Pasadas Opciones de diseño de un compilador
Compiladores: Sesión 6. Optimización
Compiladores: Sesión 6. Optimización Prof. Gloria Inés Alvarez V. Departamento de Ciencias e Ingeniería de la Computación Pontificia Universidad Javeriana Cali 7 de febrero de 2008 Optimización Se proponen
COMPILACIÓN I
COMPILACIÓN I http://ji.ehu.es/konpi1 Profesores: Eneko Agirre, Nerea Ezeiza, Julian Gutierrez (Información sobre tutorías, teléfonos, etc. en página web) Objetivos: El propósito de esta asignatura es
Compiladores e intérpretes Introducción
Introducción Profesor: Eridan Otto Introducción Perspectiva histórica Motivación Definiciones Componentes y fases de un compilador 1 Introducción Definiciónes básicas Traductor: desde un punto de vista
Nombre de la asignatura : Lenguajes y Autómatas. Carrera : Ingeniería en Sistemas Computacionales. Clave de la asignatura : SCB- 9324
. D A T O S D E L A A S I G N A T U R A Nombre de la asignatura : Lenguajes y Autómatas Carrera : Ingeniería en Sistemas Computacionales Clave de la asignatura : SCB- 9 Horas teoría-horas práctica-créditos
Teoría de Autómatas, Lenguajes Formales y Gramáticas
Teoría de Autómatas, Lenguajes Formales y Gramáticas D. Castro Esteban Departamento de Ciencias de la Computación Universidad de Alcalá Curso 2007/2008 Información sobre el profesor PROFESOR: David Castro
BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD CIENCIAS DE LA COMPUTACIÓN
BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD CIENCIAS DE LA COMPUTACIÓN PROGRAMA DE LA MATERIA CORRESPONDIENTE A LA LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN. Coordinación: NOMBRE DE LA MATERIA:
Tema 6: Compiladores e intérpretes. Teoría de autómatas y lenguajes formales I
Tema 6: Compiladores e intérpretes Teoría de autómatas y lenguajes formales I Bibliografía Sudkamp, T. A. Languages and machines: an introduction to the theory of computer science. Addison Wesley. 1997.
Carrera: SCM Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.
1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Teoría de la computación Ingeniería en Sistemas Computacionales SCM - 0434 3-2-8
Descriptor. Objetivos (1) Objetivos (2)
Descriptor Máquinas secuenciales y autómatas finitos. Gramáticas y lenguajes formales. Construcción de intérpretes y compiladores. Créditos teóricos: 4,5. Créditos prácticos: 4,5. ALeF. Presentación de
Sintaxis y Semántica. Un repaso
Sintaxis y Semántica Un repaso Definición: Alfabeto Un conjunto finito de símbolos: {a,b,c,d} {0,1,2,34,5,6,7,8,9} {identificador, número, +,-,*, /} {while, if, {, }, >, >=,
CÓMO DESARROLLAR Y PROBAR PROGRAMAS?, COMPRUÉBALO!
CÓMO DESARROLLAR Y PROBAR PROGRAMAS?, COMPRUÉBALO! AUTORÍA MARÍA CATALÁ CARBONERO TEMÁTICA PROGRAMACIÓN ETAPA CICLO MEDIO Y SUPERIOR DE INFORMÁTICA Resumen A la hora de realizar un programa en cualquier
Nombre de la asignatura: Lenguajes y Autómatas I. Créditos: Aportación al perfil
Nombre de la asignatura: Lenguajes y Autómatas I Créditos: 2 3 5 Aportación al perfil Desarrollar, implementar y administrar software de sistemas o de aplicación que cumpla con los estándares de calidad
Introducción TEORÍA DE LA COMPUTACIÓN INTRODUCCIÓN. Lógica
Introducción TEORÍA DE LA COMPUTACIÓN INTRODUCCIÓN Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: [email protected] Página Web: www.matematicas.unam.mx/fhq
Unidad 1 Introducción
Unidad 1 Introducción Contenido 1.1 La importancia de estudiar los autómatas y lenguajes formales 1.2 Símbolos, alfabetos y cadenas 1.3 Operaciones sobre cadenas 1.4 Definición de lenguaje y operaciones
