От Олега Комлева, соавтора XDev:
- - - Добавлено - - -Сообщение от Saferoll
М-м-м. А зачем - с Оберона на Паскаль? Т.е. зачем делать лишнюю работу? В чём замес, так сказать? (сборка мусора здорово упрощает написание, да и не только в этом преимущества. Ты давно ловил непонятный баг, когда прога просто вылетает? Я недавно. Но на Обероне такие вещи легче ловятся, чаще всего Оберон-компиляторы написаны настолько хорошо, что бага ловится и исправляется за секунды. Например, легко ловишь неверную метку в CASE. Или обращение по NIL-указателю. Или срабатывает ASSERT. Но это стиль, так надо научиться писать. Паскаль/Си не поощряют такой стиль, к сожалению, хотя он там конечно возможен.
Если таки собираешься брать за основу ТурбоПаскаль (есть и другие варианты, мне как-то Серж Атанцов выслал с пол-десятка компиляторов Паскаля, довольно интересных и уже на Дельфи, и переписывать не нужно), то возьми исходник TP 3.0 для Z80, он на асме. И исходник TP 6.0 для DOS (в сети есть), он на Паскале+TurboVision (IDE)+асм (компилятор). И по мотивам этих двух проектов и двигайся. Где-то в сети я видел компилер TP, переписанный на Паскаль, с подробными комментариями.
В нативном компиляторе прям на самом Спеке смысла вообще не вижу. Ты хочешь сделать хороший компилятор или поиграться? ;-)





Ответить с цитированием