Skip to content

Latest commit

 

History

History
72 lines (40 loc) · 7.05 KB

dictionary.md

File metadata and controls

72 lines (40 loc) · 7.05 KB

Англо-русский словарь терминов по вопросам компиляции

Abstract syntax tree (AST) — поскольку речь идет об абстрактном синтаксисе, представленном в виде дерева, то корректнее говорить о дереве абстрактного синтаксиса. В настоящий момент наиболее широко используется не слишком удачный термин абстрактное синтаксическое дерево (АСД) [1, 2]. Термин дерево разбора [5] может подразумевать и работу с конкретным синтаксисом. Также существует оригинальный, но забытый термин дерево Канторовича [1].

Back endфаза генерации [5], фаза синтеза, задний план.

Basic blockлинейный участок [1]. Также встречаются определения базовый блок и базисный блок [1].

Big/small-step operational semanticsоперационная семантика большого/малого шага [7] или операционная семантика с большим/малым шагом [8].

Constant foldingсвертка констант [5].

Constant propagationраспространение констант, продвижение констант, втягивание констант [5].

Common subexpression elimination (CSE)экономия выражений [3], в дословном распространенном переводе удаление общих подвыражений.

Compilerкомпилятор, транслятор [6].

Compiler generator (compiler-compiler, compiler framework)система построения трансляторов (СПТ) [5].

Control-flow graph (CFG)управляющий граф [1], граф потока управления, граф переходов [1], уграф [1], схема Мартынюка [1].

Coroutineсопрограмма.

Denotational semanticsденотационная семантика [8].

Domain-specific language (DSL)проблемно-ориентированный язык (ПОЯ) или предметно-ориентированный язык.

Dead code elimination (DCE)удаление мертвого кода, чистка программы [5].

Front endфаза декомпозиции [5], фаза анализа, передний план.

(Function) Inliningподстановка функции, встраивание функции, распроцедурирование [5].

Instruction schedulingпланирование инструкций (команд).

Instruction selectionвыбор инструкций (команд).

Intermediate representation (IR)промежуточное представление, внутренний язык, промежуточный язык [4].

Intrinsic functionвнутренняя функция, встроенная функция.

Lexical analysisлексический анализ, лексический разбор.

Middle endфаза оптимизации [5], фаза оптимизирующих преобразований, средний план.

Parsing (syntax analysis)синтаксический анализ, синтаксический разбор.

Partial evaluationчастичное вычисление.

(Compiler) Passпросмотр, проход, фаза.

Peephole optimisationлокальная оптимизация, можно встретить переводы глазковая оптимизация, оконная оптимизация и покадровая оптимизация [5]. Исторически peephole optimization это конкретный прием с просмотром и заменой в списке нескольких последовательных низкоуровневых команд. Сегодня данный термин используется для описания произвольных локальных правил оптимизации.

Semantic analysisсемантический анализ, контекстный анализ [5].

Static single assignment form (SSA)форма со статически однократным присваиванием.

Register allocationраспределение регистров.

Value numberingнумерация значений.

Источники

  1. Евстигнеев В. А., Касьянов В. Н. Толковый словарь по теории графов в информатике и программировании. – Новосибирское отделение издательства" Наука", 1999.
  2. Касьянов В. Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. – СПб. : БХВ-Петербург, 2003.
  3. Любимский Э. З., Поттосин И. В., Шура-Бура М. Р. От программирующих программ к системам программирования //Становление новосибирской школы программирования. – Новосибирск: Институт систем информатики им. АП Ершова СО РАН, 2001. – С. 27-18.
  4. Богданов В. В., Ермаков Е. А., Маклаков А. В. Программирование на языке АЛМО. – Статистика, 1976.
  5. Касьянов В. Н. Оптимизирующие преобразования программ. – Федеральное государственное унитарное предприятие Академический научно-издательский, производственно-полиграфический и книгораспространительский центр Наука, 1988.
  6. Ершов А. П., Шанский Н. М. Термонологический словарь по основам информатики и вычислительной техники. – Просвещение, 1991.
  7. Антон Подкопаев, Computer Science Center. Курс «Семантика языков программирования» (весна 2022).
  8. Пирс Б. Типы в языках программирования. - «Лямбда пресс» & «Добросвет», 2011.