vikt писал(а):
Ethereal писал(а):
А стоит написать ? Просто имеется опыт.
Безусловно стоит
Два дня читал, ломал голову. Реализовывать нужно некоторую абстрактную машину.
Тогда не ко мне. Я ассемблерщик до мозга костей. Непонимаю абстрактные машины там где можно писать для реальных.
Форт-система для меня как бы строится из трех слоев (оставлю в стороне пока технику кросс-компиляции Форта, я такое не делал еще) :
- низкоуровневые определения на ассемблере
- высокоуровневый шитый код
- текст на самом Форте который скармливается первым двум слоям
При переносе на другую платформу приходится переписывать первое, но не меняется второе и третье.
Но, если первое сделать для абстрактной машины, то тебе ведь все равно придется определять команды этой машины в кодах ассемблера целевой платформы. Объем работ от этого принципиально-то не уменьшается. А эффективность падает катастрофически.
Я понимаю такой подход для Паскаля с P-кодом. Тогда при наличии P-кода не нужно при переносе с платформы на платформу переписывать сложный алгоритм кодогенерации. Но в Форте-то этот алгоритм тривиален - или , или CALL, (случай генерации не шитого, а машинного кода с оптимизацией не рассматриваем ибо такое не для руководства "Простой Форт с нуля")
Где выигрыш от абстрактной машины ?