小编sxa*_*sxa的帖子

Ruby和Python如何实现他们的交互式控制台?

在为我的编程语言实现解释器时,我首先想到了一个简单的控制台窗口,它允许用户输入一些代码,然后作为独立的程序作为shell执行.

但是存在严重的问题:如果用户输入的每一行代码都作为独立程序处理,它必须通过标记器和解析器,然后由解释器执行 - 那么函数呢?

  • Python/Ruby交互式控制台(IDLE,irb)如何"共享"代码?如何处理代码?

例:

>> def x:
>>  print("Blah")
>> 
>> x()
Run Code Online (Sandbox Code Playgroud)

函数存储在哪里,以便可以随时调用它?

交互式控制台如何将所有输入的内容视为一个程序,而不是一遍又一遍地执行所有操作?

ruby python interpreter interactive command-line-interface

8
推荐指数
1
解决办法
591
查看次数