Xakep | Дата: Пятница, 06 Января 2012, 17:57 | Сообщение # 1 |
めちゃくちゃちゃ
Сейчас нет на сайте
| Тех кому неимется, и кому хочется создать свой собственный язык программирования, посоветую почитать следующие статьи и книжки. 1. Разработка языка программирования на LLVM (низкоуровневая виртуальная машина), довольно мощная штука, статья на линукс, но LLVM есть так же и на виндовс, желательно использовать порт gcc MinGW, но в принципе я вроде видел статьи как писать и на Visual C++ на офф. сайт. Собственно статьи: Создание языка программирования с использованием LLVM. Часть 1: Введение и лексический анализ Часть 2: Реализация парсера и AST Часть 3: Генерация кода LLVM IR Часть 4: Добавление JIT и поддержки оптимизатора Часть 5: Расширение языка: Поток управления Часть 6: Расширение языка: Определяемые пользователем операторы (англ.) Часть 7: Расширение языка: Изменяемые переменные (англ.) Часть 8: Заключение и другие вкусности LLVM (англ.)
Компиляция: Компиляция. 1: лексер Компиляция. 2: грамматики Компиляция. 3: бизон Компиляция. 4: игрушечный ЯП Компиляция. 5: нисходящий разбор Компиляция. 5 и 1/2: llvm как back-end (отступление от цикла, показывает как реализовать все что делается дальше средствами LLVM) Компиляция. 6: промежуточный код Компиляция. 7: назначение регистров Компиляция. 8: оптимизация Компиляция. 9: исполняемый код Компиляция. 10: компиляция в ELF
Теория: книга: Ахо, Ульман, "Компиляторы. Принципы, технологии, инструментарий" скачать >> Шилдта "Искусстро программирования на С++" 9-я глава.
Сообщение отредактировал Xakep - Суббота, 15 Марта 2014, 08:55 |
|
| |
Matou | Дата: Пятница, 06 Января 2012, 18:21 | Сообщение # 2 |
Исходный коТ
Сейчас нет на сайте
| Я бы еще Шилдта для полноты добавил, "Искусстро программирования на С++" 9-я глава. Там описано как интерпретатор запилить, ну может не то конечно, зато для новичка самое оно.
|
|
| |
Xakep | Дата: Пятница, 06 Января 2012, 18:32 | Сообщение # 3 |
めちゃくちゃちゃ
Сейчас нет на сайте
| спасибо, добавил )
|
|
| |