Re: транслятор с паскаля на си, написанн ый на паскале нужен.

From
Nick Kovaliov ()
To
Вадим Зеленин
Date
2002-11-15T09:07:05Z
Area
RU.ALGORITHMS
ws.dfncis.de> <ar0nga$t2m$1@gavrilo.mtu.ru>
From: "Nick Kovaliov" <Nick@urm.ru>

    ВЗ> Подробности найдёшь посмотрев код под отладчиком.
Да смотрел я ... давно правда ...
Поэтому и не вспомнил такие подробности ...
Там слолжность - придумывать разименования ...

    ВЗ> Сразу поймёшь, почему в C не стали
    ВЗ> делать такую фишку как вложенные функции
    ВЗ> :)
Вообще-то это не так и сложно сделать.
Именно разименованием.
А насчёт почему не стали ... длинный разговор.

    ВЗ> ага, написать/найти программу конвертации
    ВЗ> из C в Pascal и отконвертировать
    ВЗ> :)
    ВЗ> типа http://www.astonshell.com/files/setupc2p.zip
    ВЗ> ну и Google в помощь :)
Не думаю, что всё так просто ...

    ВЗ> На самом деле есть и LEX и YACC для Pascal.
    ВЗ> Из коммерческих - MKS Toolkit.
    ВЗ> И ещё есть что-то бесплатное...
    ВЗ> Кстати, для этого случая LEX не очень нужен -
    ВЗ> у Pascal несложная лексика :)
Лексика никогда не бывает сложной -
конечный автомат её распознаёт, и всё тут !

    ВЗ> И грамматика у него довольно простая.
Грамматика языков пр-ния как правило, не сложная.
Редко когда требуется что-то большее,
чем LL анализатор (рекурсивный спуск).
Ну максимум немножко наворотов к нему добавляется,
ну или грамматика перерабатывается до такого уровня
(удаление левой рекурсии, и всякое другое ...)

    ВЗ> Если остановиться на уровне виртовского Pascal'а,
    ВЗ> то заметно проще, чем у C.
    ВЗ> Можно обойтись рекурсивным спуском, хотя это и противно :)

Вот я и говорю, что втупую не сделать.
Даже есть взять LEX и YACC для Паскаля,
несмотря на то, что это упростит дело,
всё равно придётся понять, как всё это работает.
Хотя это само по себе полезно :)

Сложно тут вот что -
Придётся бОльшую часть семантики паскаля реализовывать
самому, т.е. почти что сделать заново свой паскаль.

    ВЗ> кстати, посмотри ещё
    ВЗ> http://www.aco.ee/files/prog/pascal-time.html
:)
Вообще изврат это всё !
Не пишите люди не на паскале, не на С, зло это ! ;-))

    ВЗ> PS Горе оутлуковое говорит, что надо
    ВЗ> писать правильно - не "Паскальные"
    ВЗ> (компиляторы) а Пасхальные или Наскальные :)
MsWord 2000 говорит "интернат" вместе "интернет".

До встречи, всего наилучшего !


--- ifmail v.2.15dev5
 * Origin: Demos online service (2:5020/400)