ASIGNATURA: LPPL CREDITOS: 6 TITULACION: Grado en Ingenieria de Computadores PLAN: 2010 CURSO: 2 CICLO: 1 CARACTER: Modulo Complementario DURACION: Cuatrimestral COORDINADOR: Ricardo Peña Marí PROFESORADO: Ricardo Peña Marí DESCRIPTOR: La asignatura recorre los conceptos básicos de los lenguajes de programación en los diferentes paradigmas y también describe a un nivel de profundidad intermedio la construcción de compiladores. Se presta especial atención a las fases del compilador más cercanas a la máquina. REQUISITOS: Programación y arquitectura de computadores a nivel elemental. OBJETIVOS: La asignatura pretende que los alumnos sepan relacionar los conceptos de alto nivel de los lenguajes de programación con su ejecución en un computador real. Para salvar esa distancia se ha escogido un enfoque en el que se van introduciendo en paralelo los conceptos de los diferentes lenguajes y la traducción e implementación a bajo nivel que de los mismos hace el compilador. CONTENIDOS: Introducción a los lenguajes y los compiladores. Análisis léxico. Análisis sintáctico. Ámbitos de definición. Sistemas de tipos. Organización del control. Abstracción de datos. Generación de código. Optimizaciones. Montaje de un ejecutable. ACTIVIDADES DOCENTES: Enseñanza presencial teórica. Realización individual de problemas con correción colectiva en clase. Tutorías individuales. EVALUACION: El 25% de la nota se obtendrá por la realización individual de problemas y su supervisión en las clases de problemas, la asistencia a las cuales será obligatoria. El 75% restante se obtendrá en el examen final. Exámenes finales en Febrero y Septiembre. BIBLIOGRAFIA BASICA: M.L. Scott. Programming Language Pragmatics. Third Edition. Elsevier 2009. R. Wilhelm; D. Maurer. Compiler Design. Addison-Wesley, 1995 R. Peña. De Eucides a Java: Historia de los algoritmos y de los lenguajes de programación. Nivola 2006.