Difference between revisions of "Programming Languages and Compilers"
Line 64: | Line 64: | ||
== Combine study == | == Combine study == | ||
=== Tutorial 1 === | === Tutorial 1 === | ||
− | * Presentation [http://linedu.vsb.cz/~beh01/wiki_data/ | + | * Presentation [http://linedu.vsb.cz/~beh01/wiki_data/PLC_Presentation.pdf#page=1 Beginning] - [http://linedu.vsb.cz/~beh01/wiki_data/PLC_Presentation.pdf#page=57 Page 55] |
* [[PLC_Laboratory_1 | Laboratory 1]] | * [[PLC_Laboratory_1 | Laboratory 1]] | ||
* [[PLC_Laboratory_2 | Laboratory 2]] | * [[PLC_Laboratory_2 | Laboratory 2]] |
Revision as of 19:37, 10 February 2022
Basic introduction
Students get an overview of the area of programming, main programming paradigms (imperative, functional, logic) and their typical representatives. They also get some theoretical body of knowledge and practical experience of compiling methods, especially concentrated to the source code analysis and intermediate code synthesis phases. Students develop practical abilities to use compiler generators like JavaCC.
Subject aims expressed by acquired skills and competences
After this lectures student should be able to effectively implement analyzers of a structured text data or of simple languages. Also they should understand concepts and constructions common for today's programming languages.
Recommended literature
Torben Mogensen: Basics of Compiler Design - freely available at http://www.diku.dk/hjemmesider/ansatte/torbenm/Basics/
Aho, A. V., Lam M.S., Sethi, R., Ullman, J. D.: Compilers. Principles, Techniques, and Tools. Addison Wesley; 2nd edition (September 10, 2006). ISBN 0321486811.7
Pierce B.C.: Types and Programming Languages, MIT Press, 2002, ISBN: 9780262162098.
Way of continuous check of knowledge in the course of semester
Evaluation compose from two parts. During the exercise, students will be programing assigned tasks (40 points). Remaining points can be obtained for a project – a compiler that will be continuously implemented during the semester (60 points).
Software
In our lectures, we will be using...
Presentations
Presentations used in our lectures:
Úvod do PLC Introduction to PLC
Programovací jazyly a překladače Programming Languages and Compilers
Schedule:
Laboratories
- Laboratory 1
- Laboratory 2
- Laboratory 3
- Laboratory 4
- Laboratory 5
- Laboratory 6
- Laboratory 7
- Laboratory 8
- Laboratory 9
- Project's evalution
Project
Combine study
Tutorial 1
- Presentation Beginning - Page 55
- Laboratory 1
- Laboratory 2
Tutorial 2
- Activity (10 points) - for solution of Laboratory 1
- Laboratory 3
- Laboratory 4
Tutorial 3
- Activity (10 points) - for solution of Laboratory 3
- Laboratory 5
- Laboratory 6
- Activity (10 points) - written test on FIRST and FOLLOW.
- Activity (10 points) - written test on LL1 grammars.
Tutorial 4
- Laboratory 7
- Laboratory 8
- Laboratory 9
- Guidelines to project - Project's description.
Tutorial 5
- Project will be evaluated.