Subject

Програмски јазици и компајлери

1. Course Title Програмски јазици и компајлери
Programming languages and compilers
2. Code F23L3S112
3. Study Programme
4. Organizer of the study programme (unit, institute, department or division) Faculty of Computer Science and Engineering
5. Degree level (first, second, third cycle) Прв циклус
6. Academic year / semester 8 / Летен
7. Number of ECTS credits 6
8. Teacher Миле Јованов
9. Prerequisites for enrolling in the course Алгоритми и податочни структури или Примена на алгоритми и податочни структури
10. Objectives of the course programme (competences) Студентите треба да го разбрерат развојот и спектарот на програмските јазици, и да го сфатат процесот на конструкција на компајлер што ќе ги надгради како програмери кои навлегле во суштината на програмските јазици.
11. Course content Предавања:
1. Вовед во предметот. Развој на програмските јазици
2. Спектар на програмсите јазици
3. Разработка на структурата на компајлерот со изучување на структурата на даден програмски јазик
4. Развој на граматики и синтаксно ориентирани преведувачи
5. Лексичка анализа
6. Синтакса и семантика, синтаксни дрва
7. Парсирање: bottom-up и top-down
8. Препроцесирање, поправка на грешки, симболни табели
9. Проверка на типови, семантичка проверка
10. Генерирање на код
11. Оптимизација на код
12. Bootstrapping. Конструкција на компајлер

Вежби:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
12. Learning methods Предавања, вежби, проекти, семинарски работи
13. Total available time 6 ECTS x 30 hours = 180 hours
14. Distribution of available time 30 + 45 + 15 + 15 + 75 = 180 часа
15. Forms of teaching activities
15.1. Lectures - theoretical instruction 30 hours
15.2. Exercises (laboratory, auditory), seminars, teamwork 45 hours
16. Other forms of activities
16.1. Project assignments 15 часови
16.2. Independent assignments 15 часови
16.3. Home study 75 часови
17. Assessment method
17.1. Tests 0 points
17.2. Seminar paper / project (presentation: written and oral) 15 бодови
17.3. Activities and learning 16 бодови
17.4. Final exam 40 бодови
18. Grading criteria (points / grade)
up to 50 points5 (five) (F)
from 51 to 60 points6 (six) (E)
from 61 to 70 points7 (seven) (D)
from 71 to 80 points8 (eight) (C)
from 81 to 90 points9 (nine) (B)
from 91 to 100 points10 (ten) (A)
19. Requirement for obtaining a signature and taking the final exam Реализирани активности 15, 16
20. Language of instruction Macedonian and English
21. Method for monitoring the quality of teaching Анкети, разговор со студенти.
22. Literature
22.1. Required literature
1. Alfred Aho, Monica S. Lam, RaviSethi, Jeffrey D. Ullman | Compilers-Principles, Techniques and tools | Pearson Education, Inc | 2007
2. F.J.F. Benders; J.W. Haaring; T.H. Janssen; D. Meert; A.C. van Oostenrijk | Compiler Construction A Practical Approach | 2003
3. Niklaus Wirth | Compiler Construction | Addison-Wesley | 1996
22.2. Additional literature
No. Author Title Publisher Year