我一直在搞乱 ZOMBIE 深奥的语言,而我一直在使用的解释器正在抛出一些错误。
解释器在这里:http ://esolangs.org/wiki/User:Marinus/ZOMBIE_interpreter
规范在这里:http ://www.dangermouse.net/esoteric/zombie.html
我在 Mac 上使用终端。当我通过解释器运行 Hello World 程序时,
HelloWorld is a zombie
summon
task SayHello
say "Hello World!"
animate
animate
终端说——
HelloWorld is a zombie
^
SyntaxError: invalid syntax
我相信解释器中识别语法的正则表达式存在问题,但我没有使用它们的经验。这是我认为应该归咎的代码:
comment_re = re.compile("\{.*?\}", re.DOTALL)
declaration_re = re.compile(r'([A-Za-z0-9_\-]*?)\s+is\s+an?\s+(zombie|enslaved undead|' + \
r'ghost|restless undead|vampire|free-willed undead' + \
r'|demon|djinn)', re.I)
task_re = re.compile("task\s+([A-Za-z0-9_-]*)", re.I)
remember_re = re.compile("remember\s+(.*)", re.I)
string_re = re.compile('".*?"')
integer_re = re.compile('[\-0-9\.]+')
对不起,我不能更具体......任何帮助将不胜感激。