问题标签 [read-eval-print-loop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
lisp - 函数错误地返回 Nil
我现在正在尝试学习 Lisp,作为我 CS1 课程的补充,因为这门课对我来说太慢了。我选择了“Practical Common Lisp”,到目前为止,这本书证明是一本很棒的书,但是我在让一些例子起作用时遇到了一些麻烦。例如,如果我将以下文件加载到 REPL 中:
并使用 查询“数据库” (select (artistSelector "The Beatles"))
,即使我确实在数据库中有一个:artist
等于的条目"The Beatles"
,该函数也会返回NIL
。
我在这里做错了什么?
ruby - IDLE 类似于 Ruby 的交互式控制台
我从 Ruby 开始,想知道是否有一个类似于 Python 的 IDLE 的交互式控制台,你知道,具有上下文突出显示和自动完成功能。我尝试过 IRB,但它相当简陋(尽管它完成了工作;毫无疑问)。谷歌搜索没有帮助。你们有什么建议吗?
c - 是否可以构建交互式 C shell?
我只是想知道这是否可以使用(Python、Java 或 C)?我正在寻找类似 IPython for Python 的东西。
perl - pdl2(或Devel::REPL)中是否有与perl调试器'x'等效的东西?
我还使用pdl2
(PDL
shell)作为我的默认 Perl 交互式 shell(它加载了所有不错的插件Devel::REPL
)。但我错过了x
翻斗打印别名。p
对 piddles 很好,但它不适用于普通的数组引用或哈希引用。我已经加载Data::Dumper
了,但它缺乏一种控制深度的简单方法,我喜欢你可以快速设置深度限制的方式x
,例如x 2 $deep_datastruct
复杂的数据结构。但是用Data::Dumper
的过程比较麻烦:
在 Perl调试器中,您可以直接实现相同的目的x 1 $c
。有没有pdl2
类似的东西这么简洁?
[更新]
并与这个问题相关:是否pdl2
或Devel::REPL
具有 Perl 调试器命令m
或y
?或者应该创建一个模块PadWalker
并导出它们?我想使用真正的 REPL 而不是 Perl 调试器作为交互式 shell,但是 Perl 调试器仍然有一些我不知道如何处理的重要事情Devel::REPL
or pdl2
。
例如查看所有变量(pdl2
仅显示 piddles):
顺便说一句,是否有人知道一个Devel::REPL
用于列出所有正在使用的变量的插件(例如y
在调试器中,但只有名称,而不是值)然后有一个x
-like 来转储想要的变量?
haskell - 保存我正在运行的顶层以供以后使用
在顶层ocaml
或ghci
顶层工作时,我经常为需要更好的词、绑定值、函数、加载的模块等建立重要的“上下文”。有没有办法保存所有这些并在以后重新加载,这样我就可以从我离开的地方继续?或者更好的是,将整个文件作为文本文件转储出来,可以重新加载或修改成可以编译成可执行文件的代码(例如,通过添加 Main)?
clojure - clojure repl 中的先前表达式
在 python repl 中,获取先前输入表达式的结果很容易:
有没有办法在 clojure repl 中做到这一点?
java - 将 clojure / scala repl 附加到正在运行的 JVM
我有一个在 Sun java 6 JVM 中的 tomcat 下运行的 java web 应用程序。有没有办法将 scala 或 clojure REPL 附加到正在运行的 JVM ?
一旦 webapp 启动并运行,将在其中进行调用的上下文已经在运行的 VM 中设置好了。因此,这对于调用任意 Java 方法调用以进行增量、探索性开发和调试非常有帮助。
python - Python用于在交互式控制台中决定>>>和...提示的算法?
我正在实现一个自定义(铁)Python 控制台。
一般来说,我需要显示一个>>>
提示,但是当一个语句不完整时,我需要将提示更改为...
并收集更多行,然后再执行它们。
我如何知道用户输入的一行是否完整,或者我是否需要阅读更多行?
一种简单的方法似乎是检查是否:
存在。但我不确定我是否没有错过其他:
不存在的情况。
我查看了 IronPython 源代码以了解它是如何做到这一点的,但是涉及到许多步骤,而且我的简单复制未能完全奏效。
clojure - 通过远程 REPL 访问正在运行的 Clojure 系统
我有一个在使用 Clojure 的 JVM 中运行的 Web 服务器。我想从 REPL 远程连接到这个 JVM,但是我找不到任何“CLEAR”步骤来解决我如何做到这一点。有人已经这样做了吗?
注意:我可以使用标准的 REPL 或 jline
emacs - 控制台 emacs 上的 REPL
我正在使用 emacs 的控制台版本(也就是说,我通过 SSH 连接到远程机器并在那里使用 emacs),我想知道如何(假设可能)从那里启动 REPL。我对 Lisp 和 emacs 很陌生。