![]() |
|
|
![]()
|
|
| setq |
|
|||
|
Unregistered |
Кто-нибудь сталкивался с задачей генерации исходного текста программы по абстрактному синтаксическому дереву? Насколько это сложно? Какие бывают подводные грабли?
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 3 Всего: 173 |
Сталкивался. Правда текст генерировался на языке, отличном от того, из которого поднималось AST (транслятор). Даже в этом случае ничего сложного нет, надо лишь учитывать:
1) приоритеты операторов, чтобы расставлять лишь минимально необходимые скобки; 2) расстановку отступов (обычно для читаемости, в случае Python жизненно важно). Типизация выражений также может требовать внимания. Все остальное сильно зависит от языка, но в целом, генерация AST процесс легко обратимый (если при этом не теряются идентификаторы). -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |