Цитата Сообщение от goodboy Посмотреть сообщение
на ZX есть `компиляторы` которые на самом деле не переводят строку в маш.код,
а конвертят её в формат более быстрый для передачи в интепретатор.
например Tobos
У меня тоже была мысль первая -- зачем останавливаться на подмене операторов на токены, если можно все прожевать в деталях (но так, что бы потом можно было восстановить). Для листинга и редактирования можно потерпеть как фарш проворачивается назад, а для исполнения все же иметь то, что легко исполнить, а не легко отредактировать. Но пока я не знаю что на самом деле там происходит, так что это все так, слова и жестикулирование.

Константы можно было бы хранить в обработанном виде. Тут правда трудно соблюсти однозначное соответствие между текстом и внутренним представлением. Как отличить 0003 (ну захотелось мне так написать) от 3. Например так: токен "const-int", 3, индекс строки "0003" в таблице строк. Больше памяти нужно, ну и что.

А выражения как обрабатываются? Каждый раз строится дерево с нуля (наверное на ходу прямо исполняясь) ?