Описание тега compiler-construction
Тэг compiler-construction следует применять к вопросам, касающимся программирования компиляторов, или к вопросам о детальной внутренней работе компиляторов. НЕ ИСПОЛЬЗУЙТЕ для вопросов об * использовании * определенных компиляторов или ошибках компиляции.
Компилятор - это программа, переводящая один язык на другой. Построение компилятора - это процесс создания компилятора.
Тэг compiler-construction следует применять к вопросам, касающимся программирования компиляторов, или к вопросам о детальной внутренней работе компиляторов.
С одного языка на другой? Я думал, они сделали исполняемые файлы!
Немногие компиляторы делают именно это:
В основном они переводят понятный человеку язык программирования (например, Fortran, Cobol, Algol, PL/1, Pascal, C, C++, C# и т. Д.) В файл объектного кода, который впоследствии необходимо связать.
Многие компиляторы реального мира переводят язык высокого уровня в ассемблерный код, который впоследствии собирается отдельной программой и затем связывается.
- Стандартный компилятор Java переводит код Java в байт-код JVM, который должен запускаться специальной программой (JVM), которая может включать в себя компилятор Just In Time (JIT) или HotSpot, который на лету переводит байт-код в собственные машинные инструкции.
- Ранние версии Unix поставлялись с компилятором Fortran-to-C.
- Самые ранние версии языка, который стал C++, были скомпилированы в C программой под названием
cfront
. - Существует множество других примеров компиляторов "исходный код".
- Некоторые языки, такие как JavaScript и многие другие языки сценариев, вообще не имеют компиляторов, но выполняются непосредственно из исходного кода.
Большой список ресурсов:
- Платформа Nanopass для обучения компиляторов PDF
- Книга по расширенному проектированию и внедрению компиляторов
- Пошаговый подход к построению компилятора PDF
- Видеоурок по ANTLR 3.x
- Сборка компилятора Parrot
- Основы компилятора
- Книга построения компилятора
- Книга по проектированию и созданию компиляторов
- Создание компилятора с помощью C Book
- Dragon Book Book - Широко считается "книга" для написания компилятора.
- Основы языков программирования
- Архив статей Flipcode
- Книга " Мастерство создания сценариев игры"
- Как создать виртуальную машину с нуля в C# PDF
- Реализация функциональных языков
- Реализация языков программирования с использованием C# 4.0
- Шаблон переводчика - определяет способ оценки предложений на языке.
- Описано в книге шаблонов дизайна
- Шаблоны языковой реализации: создайте свои собственные предметно-ориентированные и общие языки программирования
- Создадим компилятор
- Версия PDF PDF
- Линкеры и загрузчики Google Книги
- Лисп в книге маленьких кусочков (LiSP)
- Учебное пособие по LLVM
- Современная реализация компилятора в ML Book - считается очень хорошей книгой
- Конструкция объектно-ориентированного компилятора
- Учебник по попугаю
- Методы синтаксического анализа - Практическое руководство
- Project Oberon PDF - см. Главу 13
- Программирование книги на персональном компьютере
- Языки программирования: приложение и книга устного перевода
- Rabbit: компилятор схемы PDF
- Размышления о доверии PDF - краткое руководство
- Сделайте свой собственный компилятор для платформы.NET. Быстрая полная форма MSDN.
- Структура и интерпретация компьютерных программ
- Книга типов и языков программирования
- Хотите написать компилятор?- краткое руководство
- Написание компилятора на Ruby снизу вверх