Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Andrey040601
4 / 4 / 3
Регистрация: 13.07.2014
Сообщений: 128
Завершенные тесты: 5
1

Компилятор/создание переменной программно

23.02.2015, 19:50. Просмотров 397. Ответов 9
Метки нет (Все метки)

Сложно ли написать свой компилятор к (например) своему придуманному языку? Где можно об этом почитать?
Меня интересует именно это:
Как реализовать создание переменных? То есть, вводишь код на своем языке, например "var" создает переменную. Как это реализовать в собственном компиляторе?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2015, 19:50
Ответы с готовыми решениями:

Как программно получить заначение типа переменной.
Как программно получить заначение типа переменной, int ? float ? и тд?

Почему, при попытке "взять" адрес переменной,компилятор ее не положит на регистр?
почему, при попытке "взять" адрес переменной,компилятор ее не положит на регистр

Создание текстовой переменной
Заметил, что данный способ создаёт переменную без объявления её длины. char...

Хитрое создание переменной
Позвольте азадачить всех, кому интересно. Создаю переменные int ...

Создание Новой переменной!
Помогите написать фрагмент кода задача в том что: Ну жно создать переменную...

9
The535
26 / 26 / 18
Регистрация: 16.01.2014
Сообщений: 161
23.02.2015, 19:52 2
http://habrahabr.ru/post/133780/
0
Andrey040601
4 / 4 / 3
Регистрация: 13.07.2014
Сообщений: 128
Завершенные тесты: 5
23.02.2015, 19:59  [ТС] 3
Цитата Сообщение от The535 Посмотреть сообщение
http://habrahabr.ru/post/133780/
Мне бы на плюсах. Или на C++ нельзя?)
0
GREGOR_812
26 / 26 / 5
Регистрация: 23.04.2014
Сообщений: 130
23.02.2015, 20:36 4
Andrey040601, начни с простого: анализатор математических выражений. Тебе потребуется абстрактный класс Expression, от которого наследуются классы Number, Variable, Function, BinaryOperation, определи методы для них, научись сворачивать константы, погугли про абстрактное синтаксическое дерево (abstraction syntax tree). Удачи)
0
gazlan
3141 / 1917 / 311
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
23.02.2015, 20:47 5
Цитата Сообщение от Andrey040601 Посмотреть сообщение
Где можно об этом почитать?

Компиляторы: принципы, технологии и инструменты
0
GREGOR_812
26 / 26 / 5
Регистрация: 23.04.2014
Сообщений: 130
23.02.2015, 20:55 6
Кстати, у Вирта по-моему есть книга по созданию компилятора
0
gazlan
3141 / 1917 / 311
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
23.02.2015, 21:19 7
У Н. Вирта все книги по созданию компиляторов :-)
0
GREGOR_812
26 / 26 / 5
Регистрация: 23.04.2014
Сообщений: 130
23.02.2015, 22:05 8
gazlan, у меня лично есть книга под названием "Алгоритмы и структуры данных" :-)
0
gazlan
3141 / 1917 / 311
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
23.02.2015, 23:46 9
Цитата Сообщение от GREGOR_812 Посмотреть сообщение
Алгоритмы и структуры данных
Было несколько изданий, разных лет. Мне больше всего нравится первое (1985): Н. Вирт "Алгоритмы + структуры данных = программы"
0
nonedark2008
1092 / 815 / 234
Регистрация: 28.07.2012
Сообщений: 2,276
23.02.2015, 23:54 10
Цитата Сообщение от Andrey040601 Посмотреть сообщение
Сложно ли написать свой компилятор к (например) своему придуманному языку? Где можно об этом почитать?
Парсер и лексер рожается прямо по книжке.
Генерацию кода с оптимизациями проще всего сделать с помощью LLVM.
0
23.02.2015, 23:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2015, 23:54

Создание файловой переменной
Написал программу, пользователь вводит ФИО, группу, оценки и дату рождения о...

Компилятор (Visual C++ 6.0) в плохой совместимости с Windows 7. Посоветуйте другой компилятор
Здравствуйте! Я недавно начал заниматься С++, но мой компилятор (Visual C++...

Switch case создание переменной
Добрый вечер, int main() { int a = 1; switch( a ) { // start case...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru