Profs. Carlos Pérez y Ricardo Monascal



Documentos relacionados
Tema 1: Introducción. Teoría de autómatas y lenguajes formales I

UNIVERSIDAD NACIONAL AUTÓNOMA LICENCIADO EN CIENCIAS DE LA COMPUTACIÓN

Texto: Hopcroft, J. E., Motwani, R., Ullman, J.D., Introduction to Automata Theory, Languajes, and Computation. 3rd Edition. Addison Wesley, 2007.

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

Universidad Ricardo Palma Facultad de Ingeniería

Carácter Modalidad Horas de estudio semestral (16 semanas)

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

Procesadores de lenguaje Tema 1 Introducción a los compiladores

DOMINIOS COGNITIVOS (Objetos de estudio, temas y subtemas)


Procesadores de lenguaje Tema 1: Introducción a los compiladores

PROGRAMA DE COMPILADORES

Computabilidad y Lenguajes Formales: Introducción

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

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:

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

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

PROGRAMA DE CURSO. Horas de Trabajo Personal Horas de Cátedra. Resultados de Aprendizaje

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

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

PROGRAMA DE COMPILADORES

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

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

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

PONTIFICIA UNIVERSIDAD CATOLICA DEL ECUADOR FACULTAD DE INGENIERIA ESCUELA DE INGENIERIA DE SISTEMAS

Compiladores: Sesión 3. Análisis léxico, expresiones regulares

Pontificia Universidad Católica del Ecuador

ESCUELA: UNIVERSIDAD DEL ISTMO

Pontificia Universidad Católica del Ecuador

Compiladores: Introducción

Presentación de la Asignatura

LP - Lenguajes de Programación

SÍLABO DEL CURSO DE COMPILADORES Y LENGUAJES DE PROGRAMACIÓN

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

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

Teoría de Autómatas y Lenguajes Formales Equivalencia de Conjuntos Pruebas por Inducción

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

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

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

Pontificia Universidad Católica del Ecuador

Coordinación de Ciencias Computacionales INAOE. Teoría de Autómatas y Lenguajes Formales. Temario detallado para examen de ingreso 2012

Gramáticas de Atributos

Procesadores de Lenguaje

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

DES: Programa(s) Educativo(s):

Conceptos básicos sobre gramáticas

16 Análisis sintáctico I

Introducción a la Lógica y la Computación

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

INTRODUCCIÓN A LOS LENGUAJES

Programa del curso IC Compiladores e Intérpretes. Escuela de Computación. Carrera de Ingeniería de Computación, Plan 410.

Introducción a la Lógica y la Computación

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

ORGANIZACIÓN DOCENTE del curso Teoría de Autómatas y Lenguajes Formales. Ayudante LSI. Prac. Problemas (2) Prac. Problemas. Prac.

Compiladores e Intérpretes

PROGRAMA DE COMPILADORES

Teoría de Lenguajes. Propiedades y caracterizaciones de los lenguajes incontextuales

Práctica 01 - Preprocesamiento básico para un código fuente en lenguaje C Compiladores - Profr. Edgardo Adrián Franco Martínez

Sintaxis y Semántica del Lenguaje

Tema 3: Gramáticas regulares. Teoría de autómatas y lenguajes formales I

Teoría de la Computación y Leguajes Formales

Tema 1: Introducción

Compilación. Jaime Gutiérrez Alfaro Compiladores e Intérpretes. II semestre,

Compiladores: Sesión 6. Optimización

COMPILACIÓN I

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

Procesadores de Lenguajes

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

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

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

PROCESADORES DEL LENGUAJE

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

Compiladores e intérpretes Introducción

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE HIDALGO División de Docencia Dirección de Planeación y Desarrollo Educativo

Nombre de la asignatura : Lenguajes y Autómatas. Carrera : Ingeniería en Sistemas Computacionales. Clave de la asignatura : SCB- 9324

Teoría de Autómatas, Lenguajes Formales y Gramáticas

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

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

DEPARTAMENTO: Ingeniería e Investigaciones Tecnológicas

Carrera: SCM Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

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

Descriptor. Objetivos (1) Objetivos (2)

Compiladores: Introducción

Compiladores: un enfoque. En este artículo se expone un enfoque sencillo sobre compiladores, con la definición de la

Sintaxis y Semántica. Un repaso

Cátedra Sintaxis y Semántica del Lenguaje

CÓMO DESARROLLAR Y PROBAR PROGRAMAS?, COMPRUÉBALO!

UNIVERSIDAD AUTONOMA DE BAJA CALIFORNIA

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

Introducción TEORÍA DE LA COMPUTACIÓN INTRODUCCIÓN. Lógica

GUÍA DOCENTE PROCESADORES DE LENGUAGE

UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN

Unidad 1 Introducción

Procesadores de Lenguajes

Transcripción:

TRADUCTORES E INTERPRETADORES Clase 0: Introducción al Curso

Quiénes somos? Prof. Carlos Pérez caperez@ldc.usb.ve Prof. Ricardo Monascal rmonascal@ldc.usb.ve Oficina: MYS-228A (Sí, es la misma)

Recursos Oficiales Página del curso: http://ldc.usb.ve/~rmonascal/cursos/ci3725_aj12/ 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: http://ldc.usb.ve/~astorga/lenguaregular.pdf

Evaluación 70% teoría Examen 1 (25%): Martes, Semana 5. Examen 2 (20%): Martes, Semana 8. Examen 3 (25%): Martes, Semana 12. 30% 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 10 11.

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.

Motivación Todo es un lenguaje!

Motivación Todo es un lenguaje!

Jerarquía de Chomsky REGULARES

LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES

SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES

RECUSRIVO SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES

RECUSRIVAMENTE ENUMERABLE RECUSRIV0 SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky REGULARES

RECUSRIVAMENTE ENUMERABLE RECUSRIV0 SENSIBLES AL CONTEXTO LIBRES DE CONTEXTO Jerarquía de Chomsky Y HABRÁ MÁS? REGULARES

Lenguajes de Programación Qué es un lenguaje de programación? Dónde entran en la jerarquía? Programa? MAQUINA

Lenguajes de Programación MAQUINA Programa ENTENDER PROCESAR?

Lenguajes de Programación MAQUINA Programa ENTENDER PROCESAR? FRONT-END BACK-END

Lenguajes de Programación FRONT-END Programa Análisis Léxico (Lexer) Análisis Sintáctico (Parser) Análisis de Contexto Representación Intermedia

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),...]

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

Lenguajes de Programación FRONT-END Programa Representación Intermedia Árbol Sintáctico Abstracto Análisis de Contexto Árbol Sintáctico Abstracto (Decorado)

Lenguajes de Programación Código en otro lenguaje Representación Intermedia BACK-END Ejecución

Lenguajes de Programación Representación Intermedia BACK-END Código en otro lenguaje Traducción vs. Compilación Ejecución Interpretación

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

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...

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.

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 λ.

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.

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!

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?