-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathcompilers.html
More file actions
65 lines (48 loc) · 3.05 KB
/
compilers.html
File metadata and controls
65 lines (48 loc) · 3.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
---
layout: page
title: "Теория компиляции"
permalink: /compilers/
---
{% assign posts_collection = site.compilers %}
<h1 class="post-heading">Проекты</h1>
<p>
Проекты выполняются в течении всего курса и сдаются в конце. В некоторых проектах возможна командная работа — об этом написано явно в спецификации. Ссылки на спецификации проектов ниже.
</p>
{% include post_box.html post_id='/compilers/project_compiler' %}
{% include post_box.html post_id='/compilers/project_postscript' %}
<h1 class="post-heading">Обзорные статьи</h1>
{% include post_box.html post_id='/compilers/compiler_books' %}
{% include post_box.html post_id='/compilers/what_is_driver' %}
{% include post_box.html post_id='/compilers/what_is_frontend' %}
{% include post_box.html post_id='/compilers/what_is_backend' %}
<h1 class="post-heading">Compiler Frontend, основы</h1>
{% include post_box.html post_id='/compilers/fsm' %}
{% include post_box.html post_id='/compilers/grammars' %}
{% include post_box.html post_id='/compilers/simple_recursive_parser' %}
{% include post_box.html post_id='/compilers/ast' %}
{% include post_box.html post_id='/compilers/shift_reduce' %}
{% include post_box.html post_id='/compilers/frontend_utils' %}
<h1 class="post-heading">Compiler Backend & Driver, основы</h1>
{% include post_box.html post_id='/compilers/stack_and_register' %}
{% include post_box.html post_id='/compilers/c_in_depth' %}
{% include post_box.html post_id='/compilers/backend_ffi' %}
{% include post_box.html post_id='/compilers/driver_popen' %}
<h1 class="post-heading">Лексический и синтаксический анализ</h1>
{% include post_box.html post_id='/compilers/gnu_flex_doc' %}
{% include post_box.html post_id='/compilers/lexertl_doc' %}
{% include post_box.html post_id='/compilers/gnu_bison_doc' %}
{% include post_box.html post_id='/compilers/lemon_doc' %}
<h1 class="post-heading">Frontend, продвинутый уровень</h1>
<p>
Примеры ко всем статьям ищите в репозитории примеров в каталоге <a href='https://github.com/PS-Group/cg_course_examples/blob/master/chapter_3'>chapter_3</a>
</p>
<h1 class="post-heading">Backend, продвинутый уровень</h1>
<p>
Изучаем LLVM, виртуальный ассемблер LLVM-IR, генерируем машинный код. Все примеры в этой серии статей основаны на C++14, генераторе кода Lemon или библиотеках проекта LLVM.
</p>
{% include post_box.html post_id='/compilers/llvm_setup' %}
{% include post_box.html post_id='/compilers/llvm_backend_architecture' %}
{% include post_box.html post_id='/compilers/llvm_ir_translator' %}
<h1 class="post-heading">C/C++</h1>
{% include post_box.html post_id='/compilers/c_style_code' %}
{% include post_box.html post_id='/compilers/cxx17' %}