我想要一些简单的东西来进行实验/破解。我为 c 创建了很多解释器/编译器,我只想要一些简单的东西。一个基本的 BASIC :D
如果你不知道(我已经完成了我的谷歌搜索......),yacc/bison 是唯一的方法吗?
谢谢
我想要一些简单的东西来进行实验/破解。我为 c 创建了很多解释器/编译器,我只想要一些简单的东西。一个基本的 BASIC :D
如果你不知道(我已经完成了我的谷歌搜索......),yacc/bison 是唯一的方法吗?
谢谢
PLY是一个很棒的 Python 解析器创建库。它有一个简单的 BASIC 解释器作为其示例脚本之一。你可以从那里开始。
TheFreeCountry中列出的这些都不可接受?它们都不是在 Python 中,但我应该认为从XBLite开始 可能比从 Yacc/Bison/ PLY开始更有帮助。
此外,Vb2py可能是比 PLY 更好的起始位置。
但是,如果您必须走 PLY 路线,请将MOLE 基本语法作为起点,而不是尝试从头开始编写自己的语法。
我也不知道 ruby 下的基本解释器,但只要有足够的时间和兴趣,ruby 很容易“支持”为您喜欢的任何语言编写解释器:Agile DSL Development in Ruby。我必须承认,这种方法需要投入一些时间。:( 在演示文稿的最后是一些链接到有关 DSL 的进一步阅读。
您可能还希望检查Parrot 虚拟机,根据今天的维基百科,它具有一些 BASIC 支持。
ruby 中的 miniBasic 可在此处获得。Rockit 似乎比 racc 更有趣。
有pybasic(python基础),rockit-minibasic(rubybasic)。
为了使这些能够使用 gui,必须使用 kivy 和 shoes gui 工具包分别为 pybasic 和 rockit-minibasic 以及类似的 prima gui 为 perlbasic 开发扩展(如果有的话)。