11.04.2016 / 08:47 | |
aRiGaTo Пользователь Сейчас: Offline
Имя: Snork Откуда: Yerevan Регистрация: 03.02.2010
| MoteX, а каким образом ты интерпретируешь остальные выражения? Например, __________________
don't tread on me |
11.04.2016 / 08:50 | |
MoteX Пользователь Сейчас: Offline
Имя: Матвей Откуда: Вяземский Регистрация: 14.10.2011
| aRiGaTo, здесь можно применить алгоритм обратной польской записи.
|
11.04.2016 / 08:52 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Да там на самом деле всё легко, просто нужно знать (с)
__________________
let live |
11.04.2016 / 08:54 | |
MoteX Пользователь Сейчас: Offline
Имя: Матвей Откуда: Вяземский Регистрация: 14.10.2011
| aNNiMON, поэтому я и обратился к тем, кто может знать. Кстати, возможно ты мне подскажешь |
11.04.2016 / 08:58 | |
aRiGaTo Пользователь Сейчас: Offline
Имя: Snork Откуда: Yerevan Регистрация: 03.02.2010
| MoteX, ключевое слово - «можно». Ты даже с методами трансляции не знаком. Может, сначала изучишь их? Построение AST, LL(k)-парсинг. Хотя бы это. P.S.: Спасибо, что не регулярками
__________________
don't tread on me Изменено aRiGaTo (11.04 / 08:59) (всего 2 раза) |
11.04.2016 / 09:05 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| MoteX, я начинал с изучения существующих проектов. Вот полноценный интерпретатор Бейсика в одном исходнике. Jasic.java. Изучай, что неясно, спрашивай здесь. __________________
let live |
11.04.2016 / 09:11 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Если хочется чего-то более серьёзного - используй генераторы (например, ANTLR). Примеры: If/else statements in ANTLR using listeners, Getting ANTLR to generate a script interpreter. Но основы трансляции всё равно понадобятся. __________________
let live Изменено aNNiMON (11.04 / 09:12) (всего 1 раз) |
11.04.2016 / 09:17 | |
MoteX Пользователь Сейчас: Offline
Имя: Матвей Откуда: Вяземский Регистрация: 14.10.2011
| aRiGaTo, Ну тот факт, что я выбрал алгоритм ОПЗ (есть ли причины, по которым он плох?), еще не говорит ни о чем. Я конечно буду уже сам искать способ решения. При изучении определенных багаж приложится, главное дать правильное направление. Ты даже с методами трансляции не знаком - Ну увы, не приходилось иметь дел. Или Вы здесь на что-либо намекаете? ------------ aNNiMON, спасибо, буду изучать.
|
11.04.2016 / 09:19 | |
MoteX Пользователь Сейчас: Offline
Имя: Матвей Откуда: Вяземский Регистрация: 14.10.2011
| По поводу ANTLR - натыкался. Пожалуй нужно изучить подробно.
|
11.04.2016 / 09:22 | |
aRiGaTo Пользователь Сейчас: Offline
Имя: Snork Откуда: Yerevan Регистрация: 03.02.2010
| А ещё можно было немного поискать здесь: Статьи: Пишем компилятор - Введение by Oak, Как создать свой язык программирования by aNNiMON, Ещё был перевод Senderman'а по Boolean Compiler (или как-то так), но я его не смог найти. Форум (нашёл только про формальные системы): Грамматики языков программирования, JFlap __________________
don't tread on me |