Хочу что-нибудь простое, чтобы поэкспериментировать / взломать. Я создал много интерпретаторов / компиляторов для c, и мне просто нужно что-то простое. Базовый БЕЙСИК: D
Если вы ничего не знаете (я выполнил поиск в Google ...), yacc / bison - единственный способ?
Спасибо






Ни один из перечисленных в TheFreeCountry не является приемлемым? Ни один из них не находится в Python, но я думаю, что начало с XBLite может быть более полезным, чем начало с Yacc / Bison / PLY.
Кроме того, Vb2py может быть лучшей стартовой позицией, чем PLY.
Однако, если вы должны пойти по пути PLY, рассмотрите грамматику МОЛ Базовый как отправную точку, а не пытайтесь создать свою собственную с нуля.
Я также не знаю базового интерпретатора под Ruby, но, учитывая достаточно времени и интереса, Ruby легко «поддерживает» написание интерпретатора для любого языка, который вам нравится: Гибкая разработка DSL в Ruby. Я должен признать, что этот подход требует определенных затрат времени. :( В конце презентации приведены ссылки на дополнительные материалы по DSL.
Вы можете также изучить виртуальная машина Parrot, который, согласно сегодняшней Википедии, имеет некоторую поддержку BASIC.
PLY - отличная библиотека для создания парсеров для Python. Он имеет простой интерпретатор BASIC в качестве одного из примеров скриптов. Вы можете начать там.
доступен miniBasic на рубине здесь. Rockit кажется НАМНОГО веселее, чем racc.
Различают пибазовый (питон основной), рокит-минибазовый (рубиново-базовый).
Чтобы они могли использовать графический интерфейс, необходимо разработать расширения с инструментами kivy и shoes gui для pybasic и rockit-minibasic соответственно и аналогично prima gui для perlbasic, если он когда-либо существует.