Double Qualification in Engineering Studies in Telematics and Computer Science

Double Degree in Engineering Studies in Telematics and Computer Science

Receive training to become an expert engineer in Network and Internet Technologies and get the CCNA and CCNP official qualifications

Programming Languages

Description
When finishing the course the student: - it Knows the basic foundations by the formal definition of programming languages. - It uses properly the technicians for the implementation of programming languages. - It knows the different paradigms of programming. - It has the sufficient capacity to choose the most adapted programming language by the resolution of a problem.
Type Subject
Optativa
Semester
Second
Credits
6.00

Titular Professors

Previous Knowledge
Objectives

G-1. Capacity of analysis and synthesis of conceptual frames to generate new knowledges.
G-2. Capacity to organise and schedule the application of new knowledges.
G-3. Basic general knowledges on the area of study.
G-4. Purchase basic knowledges of the profession.
G-5. Oral communication and written in the own tongue.
G-9. Resolution of problems.
G-10. Taking of desicions.
G-11. Basic and fundamental knowledges of the field of training.
G-13. Purchase capacity of criticism and self-criticism.
G-14. Work in team.
G-15. Purchase interpersonal skills.
G-22. Capacity to apply the knowledges to the practice.
G-24. Capacity to develop new strategies of learning.
G-26. Generate new ideas (creativity).
G-30. Design and manage projects.
And-1. Learn of new autonomous form knowledges and timely technicians by the conception, the development or the exploitation of computer systems.

Contents

1. Programming languages: definition and design.
2. Syntax: classification of Chomsky.
3. Regular languages, regular expressions and automatons of finite states.
4. Lexicographical analysis: design and implementation.
5. Languages incontextuals, grammars incontextuals and syntactic analysers.
6. Downward syntactic analysers and ancestors: design and implementation.
7. Translation directed by syntax.
8. Grammars of attributes.
9. Semantic analysis: design and implementation.
10. Generation of code: design and implementation.

Methodology

The asignatura develops from face-to-face classes where give the necessary theoretical contents to achieve the aims of learning. These sessions complement with practices guided to the laboratory and that the students also have to realise in group.

The technologies used are: javacc, java.

Evaluation

It is an asignatura theoretical-practical in which they combine the theoretical explanations with the practices. The combination of theory and practice totally coordinated allow a strong afiançament of the contents, and therefore, of the competitions associated.
The evaluation of the student does from the following instruments of evaluation:
Examinations and exercises of continuous evaluation (50%) and the development and presentation of practices (50%).
To approve the asignatura it is necessary to do it separately so much to the practical part like the one of theory.

Evaluation Criteria
Basic Bibliography

[1] Tucker, A. B, Noonan, R.E., Programming Languages, Principles and Paradigms, 2nd edition, McGraw-Hill, 2007
[2] Pratt, Terrence and Zelkowitz, Marvin V. "Programming Languages: Design and Implementation (Fourth edition)". Prentice Hall, 2001
[3] Mozota, M., Teoria de la compilació: Anàlisi lèxic i sintàctic, LaSalleOnline Enginyers, 2009
[4] Mozota, M., Teoria de la compilació: Anàlisi semàntica i generació de codi, LaSalleOnline Enginyers, 2009

Additional Material