This module builds on the skills and knowledge acquired in other subjects in the curriculum:
Automaton and Computer Theory.
Data Structure.
Programming Fundamentals I and II.
Programming Methodology.
Structure of Computers.
Therefore, in order to assimilate and conveniently make the most of the contents that will be taught in the course, it is recommended to have passed them.
This module is included in the Specific Technology of Computation and it provides an overview of the principles of operation of compilers and interpreters, and the role they play within the context of computer science engineering.
The concepts of language processors also find application outside the field of compilation. Some of these fields are the following: design of programming languages and programming aid tools, processing of text files with structured information, word processors, symbolic calculation, database management systems , etc.
The practical importance of language processors in computing is mainly shown in the daily use of compilers and interpreters by professional programmers.
Currently, compilation is considered a traditional area of computer science, which has a deep theoretical base and a systematized design process. The future of language processors is linked to the development of their multiple application areas.
Therefore, a deep knowledge of the principles and techniques of language processors is fundamental in the university training of computer specialists, mainly if they have chosen he Specific Technology of Computation.
Course competences | |
---|---|
Code | Description |
CM2 | Ability to know the theoretical fundamentals of programming languages, and their associated techniques for lexical, syntactic, and semantic processes, along with their application in the creation, design, and language processing. |
INS1 | Analysis, synthesis, and assessment skills. |
INS4 | Problem solving skills by the application of engineering techniques. |
UCLM3 | Accurate speaking and writing skills. |
Course learning outcomes | |
---|---|
Description | |
Knowledge of what a programming language consists of and an integrated vision of the functioning and structure of a language processor. | |
Ability to build applications based on processors for domain-specific languages. | |
Additional outcomes | |
Description | |
Training Activity | Methodology | Related Competences (only degrees before RD 822/2021) | ECTS | Hours | As | Com | R | Description * |
Class Attendance (theory) [ON-SITE] | Lectures | CM2 | 0.56 | 14 | N | N | N | |
Problem solving and/or case studies [ON-SITE] | Problem solving and exercises | CM2 INS1 INS4 | 0.56 | 14 | N | N | N | |
Laboratory practice or sessions [ON-SITE] | Group Work | CM2 INS1 INS4 | 0.72 | 18 | Y | Y | Y | |
Final test [ON-SITE] | Assessment tests | CM2 INS1 INS4 UCLM3 | 0.24 | 6 | Y | Y | Y | |
Project or Topic Presentations [ON-SITE] | Group Work | INS1 INS4 UCLM3 | 0.32 | 8 | Y | Y | Y | |
Study and Exam Preparation [OFF-SITE] | Self-study | CM2 INS1 INS4 UCLM3 | 1.64 | 41 | N | N | N | |
Study and Exam Preparation [OFF-SITE] | Group Work | CM2 INS1 INS4 | 0.8 | 20 | N | N | N | |
Writing of reports or projects [OFF-SITE] | Self-study | CM2 INS1 INS4 UCLM3 | 0.48 | 12 | Y | Y | Y | |
Practicum and practical activities report writing or preparation [OFF-SITE] | Group Work | CM2 INS1 INS4 UCLM3 | 0.68 | 17 | N | N | N | |
Total: | 6 | 150 | ||||||
Total credits of in-class work: 2.4 | Total class time hours: 60 | |||||||
Total credits of out of class work: 3.6 | Total hours of out of class work: 90 |
As: Assessable training activity Com: Training activity of compulsory overcoming R: Rescheduling training activity
Grading System | |||
Evaluation System | Face-to-Face | Self-Study Student | Description |
Laboratory sessions | 45.00% | 0.00% | Students must submit the practical project consisting of the development of a compiler for a small language that will be defined at the beginning of the course. During the course there will be several partial assignments of the project that will show the evolution of the students. Each assignment will have its corresponding presentation before the teacher. This element of evaluation is included in the LAB section (35%) and in the PRESS section (10%). |
Test | 30.00% | 0.00% | Students will do two assessments test, one in the middle of the course and one at the end. These tests will be made of three or four exercises. This part is assessed in the ESC section. |
Assessment of problem solving and/or case studies | 20.00% | 0.00% | Students will be required to submit a report where they will describe justified solutions for the exercises indicated as such in class. They will obtain marks in each exercise according to the following scale: - Correct exercise: Maximum score. - Partially correct exercise correct: Maximum score/2. - Incorrect exercise: 0 points. This section is included within Reports section (INF) |
Assessment of active participation | 5.00% | 0.00% | Participation in classes, mainly problems and laboratory clasess, will be valued. It shall have the following criteria: - Presentation of ideas to the group for the resolution of problems, in exercise and laboratory classes. -Participation in seminars presenting ideas an solutions to be taken. This section is graded within the presentation section (PRES) |
Total: | 100.00% | 0.00% |
Not related to the syllabus/contents | |
---|---|
Hours | hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 3 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 3 |
Laboratory practice or sessions [PRESENCIAL][Group Work] | 4 |
Final test [PRESENCIAL][Assessment tests] | 6 |
Project or Topic Presentations [PRESENCIAL][Group Work] | 8 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 15 |
Study and Exam Preparation [AUTÓNOMA][Group Work] | 20 |
Writing of reports or projects [AUTÓNOMA][Self-study] | 12 |
Practicum and practical activities report writing or preparation [AUTÓNOMA][Group Work] | 17 |
Unit 1 (de 5): Structure of compilers and interpreters | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 1 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 1 |
Laboratory practice or sessions [PRESENCIAL][Group Work] | 2 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 2 |
Unit 2 (de 5): Lexical Analysis | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 2 |
Laboratory practice or sessions [PRESENCIAL][Group Work] | 2 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 6 |
Unit 3 (de 5): Syntax Analysis | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 4 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 2 |
Laboratory practice or sessions [PRESENCIAL][Group Work] | 4 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 6 |
Unit 4 (de 5): Semantic Analysis | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 2 |
Laboratory practice or sessions [PRESENCIAL][Group Work] | 4 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 6 |
Unit 5 (de 5): Intermediate Code Generation | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 4 |
Laboratory practice or sessions [PRESENCIAL][Group Work] | 2 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 6 |
Global activity | |
---|---|
Activities | hours |