Fichas de asignaturas 2010-11
![]() |
PROCESADORES DE LENGUAJES II |
![]() ![]() |
|
Asignatura |
![]() |
| |
Profesorado |
![]() |
| |
Situación |
![]() |
| |
Competencias |
![]() |
| |
Objetivos |
![]() |
| |
Programa |
![]() |
| |
Actividades |
![]() |
| |
Metodología |
![]() |
| |
Distribucion |
![]() |
| |
Técnicas Docentes |
![]() |
| |
Evaluación |
![]() |
| |
Recursos Bibliográficos |
![]() |
Código | Nombre | |||
Asignatura | 1713027 | PROCESADORES DE LENGUAJES II | Créditos Teóricos | 1,5 |
Descriptor | Language Processors II | Créditos Prácticos | 3 | |
Titulación | 1713 | INGENIERÍA EN INFORMÁTICA | Tipo | Troncal |
Departamento | C137 | LENGUAJES Y SISTEMAS INFORMATICOS | ||
Curso | 5 | |||
Duración (A: Anual, 1Q/2Q) | 1Q | |||
Créditos ECTS | 4 |
Para el curso | Créditos superados frente a presentados | Créditos superados frente a matriculados |
2007-08 | 100.0% | 83.3% |
Pulse aquí si desea visionar el fichero referente al cronograma sobre el número de horas de los estudiantes.
Profesorado
José Antonio Jiménez Millán (Coordinador)
Situación
Prerrequisitos
Los necesarios para acceder al segundo ciclo de la carrera de ingeniero en Informática
Contexto dentro de la titulación
Esta asignatura troncal de 5º curso es continuación de la asignatura llamada Procesadores de Lenguajes I de 4º curso de la Ingeniería en Informática que, a su vez, se puede considerar continuación de la asignatura de "Traductores" obligatoria de 3º curso de las Ingenierías Técnicas de Gestión y Sistemas. Esta asignatura pone en práctica conocimientos y habilidades aprendidas en otras asignaturas distintas de las previamente citadas. En concreto sobre programación Orientada a objetos, Estructuras de Datos, y Metodología de la Programación.
Recomendaciones
Debido al escaso número de créditos de esta asignatura, se ha planteado como una panorámica de los temas descritos en su temario. Se recomienda: a) Poseer los conocimientos proporcionados por la asignatura troncal de 4º curso titulada "Procesadores de Lenguajes I". b) La asistencia a clases teóricas y prácticas. c) El estudio y trabajo continuado realizando los ejercicios propuestos por el profesor y entregando los trabajos pedidos a tiempo. d) La utilización del Campus Virtual como herramienta de intercambio de conocimientos entre los alumnos y con el profesor.
Competencias
Competencias transversales/genéricas
Capacidad de análisis y síntesis. Capacidad de relacionar los conocimientos teóricos con la práctica. Capacidades de comunicación oral y escrita. Resolución autónoma de problemas.
Competencias específicas
Cognitivas(Saber):
INSTRUMENTALES Capacidad de análisis y síntesis Capacidad de organización y planificación Comunicación oral y escrita en la lengua nativa Manejo de manuales y documentos en inglés Conocimientos de informática relativos al ámbito de estudio Capacidad de gestión de la información Resolución de problemas Toma de decisiones PERSONALES Trabajo en equipo Habilidades en las relaciones interpersonales Razonamiento crítico Compromiso ético SISTÉMICAS Aprendizaje autónomo Adaptación a nuevas situaciones Iniciativa y espíritu emprendedor Motivación por la calidad Creatividad
Procedimentales/Instrumentales(Saber hacer):
Saber implementar y depurar, sobre un ordenador, un pequeño compilador de un lenguaje funcional. Saber implementar y depurar, sobre un ordenador, un pequeño compilador de un lenguaje lógico. Buscar información sobre la asignatura. Programar, compilar y depurar programas que implementen ejercicios de la materia en cuestión. Resolver ejercicios y problemas de la materia. Describir, por escrito, preguntas teóricas.
Objetivos
Presentar al alumno/a la materia. Conocer los principios, ventajas y limitaciones de las diversas tecnologías implicadas. Capacitar a los alumnos/as para implementar, sobre un ordenador, pequeños compiladores utilizando las herramientas y técnicas mostradas en clase.
Programa
Tema 1: Introducción a la compilación de lenguajes funcionales. El cálculo lambda. Reducción de grafos. Orden normal y aplicativo. Unificación. Recolección de basura (Garbage Collection). Tema 2: Implementación de Lenguajes Funcionales Máquina reductora de grafos. Máquina SECD. Cálculo en Deducción Natural para la lógica. Correspondencia Curry-Howard y la Máquina de Krivine Tema 3: Compilación de Prolog. La unificación en Prolog. La máquina abstracta de Warren (WAM).
Metodología
Parte de las clases de teoría consistirán en la exposición, por parte del profesor y con ayuda de los medios audiovisuales necesarios, de los contenidos teóricos. En ellas también se propondrán algunos ejercicios a realizar en casa por los alumnos y que serán discutidos, por los propios alumnos, en las clases siguientes. En las clases de prácticas el profesor mostrará pequeños modelos típicos de compiladores de lenguajes funcionales y lógicos, discutiendo la solución adoptada. Por último, se pedirá que los alumnos implementen y depuren sobre el ordenador pequeños módulos de compiladores propuestos por el profesor. Tanto los ejemplos típicos como los enunciados de los ejercicios propuestos se publicarán con la suficiente antelación en la página web de la asignatura. Así mismo, los alumnos tendrán que preparar un trabajo a exponer en público.
Distribución de horas de trabajo del alumno/a
Nº de Horas (indicar total): 100
- Clases Teóricas: 14
- Clases Prácticas: 23
- Exposiciones y Seminarios:
- Tutorías Especializadas (presenciales o virtuales):
- Colectivas:
- Individules:
- Realización de Actividades Académicas Dirigidas:
- Con presencia del profesorado: 8
- Sin presencia del profesorado:
- Otro Trabajo Personal Autónomo:
- Horas de estudio: 28
- Preparación de Trabajo Personal: 18
- ...
Realización de problemas = 4 horas
- Realización de Exámenes:
- Examen escrito: 4
- Exámenes orales (control del Trabajo Personal):
Técnicas Docentes
|
Criterios y Sistemas de Evaluación
Se realizarán un examen teórico y otro práctico. El examen práctico se realizará sobre un ordenador y necesitará la implementación de un programa. Los trabajos de los alumnos deben ser entregados dentro de las fechas indicadas por el profesor. Tanto los trabajos realizados y expuestos por los alumnos como cada uno de los exámenes se valorarán sobre 10. Para aprobar la asignatura habrá que tener aprobado todos y cada uno de ellos (es decir, un mínimo de 5 en cada trabajo, 5 en el examen de teoría y 5 en el de prácticas). Para poder realizar el examen de teoría habrá que haber aprobado el trabajo. Para aprobar el examen de teoría el alumno debe contestar todos los ejercicios y preguntas presentadas demostrando dominar, suficientemente, todos los objetivos básicos de la asignatura. Para poder pasar a la fase del examen de prácticas habrá que tener aprobado el examen de teoría. La calificación final, para aquellos alumnos que tengan aprobadas todas las partes, será la suma ponderada de cada parte.
Recursos Bibliográficos
Xavier Leroy. "Compiling functional languages". http://pauillac.inria.fr/~xleroy/talks/compilation-agay.pdf Simon L. Peyton Jones and David Lester. "Implementing functional languages: a tutorial". Published by Prentice Hall, 1992. "http://research.microsoft.com/%7Esimonpj/Papers/pj%2Dlester%2Dbook/" Hassan Aït-Kaci. Warren's Abstract Machine: A Tutorial Reconstruction. http://www.vanx.org/archive/wam/wam.html. Paul R. Wilson. "Uniprocessor Garbage Collection Techniques". ftp://ftp.cs.utexas.edu/pub/garbage/gcsurvey.ps. Kevin Knight. Unification: A Multidisciplinary Survey. ACM Computing Surveys, Vol. 21, No. 1, March 1989. http://www.isi.edu/natural-language/people/unification-knight.pdf Henk Barendregt y Erik Barendsen. "Introduction to Lambda Calculus". "http://www.cs.ru.nl/E.Barendsen/onderwijs/sl2/materiaal/lambda.pdf".
El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente. En aplicación de la Ley 3/2007, de 22 de marzo, para la igualdad efectiva de mujeres y hombres, así como la Ley 12/2007, de 26 de noviembre, para la promoción de la igualdad de género en Andalucía, toda alusión a personas o colectivos incluida en este documento estará haciendo referencia al género gramatical neutro, incluyendo por lo tanto la posibilidad de referirse tanto a mujeres como a hombres.