一个REPL将它们全部绑定?
|
我想知道是否有不是特定语言的REPL。我花了很多时间进入和退出REPL(主要是针对Clojure,Scala和Haskell),捆绑在一起的这些或多或少使我感到沮丧。看起来REPL的工作很普通,因为它们:
阅读:接受用户输入
评估:将输入传递到某个运行时进行处理
打印:将结果打印到屏幕上
循环:等待下一个用户输入
我看不出为什么不应该有一些与语言无关的REPL,但我一直找不到这样的东西。我希望在理想的REPL中进行一些操作:
Linux命令行应用程序
可通过向上箭头访问无限的历史记录
能够在重新运行之前编辑先前的命令
ctrl-r,用于像bash这样的历史记录搜索
在一个REPL中进行多个会话,因此我可以轻松地在它们之间切换
而且更乐观
语法高亮,上下文感知代码完成
是否存在?
没有找到相关结果
已邀请:
3 个回复
矾醒忻
冲汉
一起使用时,请使用-Xnojline标志:
这样可以防止jline干扰rlwrap。然后rlwrap可以自由地使用readline来实现光标的运动和历史记录,但是那是在解释器看到该行之前,并且您没有语言感知的完成。 我希望Scala REPL会得到改善。 我认为有一个演示文稿编译器是2.9的一部分,它用于突出显示错误和完成等事情。 Scala 2.9使用的jline能够利用jansi使用ansi颜色 因此,我可以梦想有一天,我将在Scala REPL中拥有IDE级别的功能。实际上,这将需要大量的精力,并且添加这些功能肯定比例如改善Eclipse支持的优先级低。此外,在Eclipse中添加REPL支持可能更有意义。
硕歌沙