标签: read-eval-print-loop

有没有办法让Scala REPL不会停止使用CTRL-C

我正在使用Scala REPL交互式测试我正在构建的一些哈希函数.我经常在产品代码(Eclipse),浏览器和Scala解释器之间切换,进行值和结果的复制/粘贴.在混音中,我经常在解释器上执行CTRL-C,退出会话并失去我的所有功能.

有没有办法让Scala REPL忽略CTRL-C,或者甚至更好地用它来执行"粘贴"?我正在研究Linux.

user-interface scala read-eval-print-loop

13
推荐指数
1
解决办法
2335
查看次数

如何让sbt`console`使用-Yrepl-sync?

Scala 2.9.1中的新增功能是-Yrepl-sync选项,它可以防止每个REPL行在新线程中运行:

scala -Yrepl-sync
Run Code Online (Sandbox Code Playgroud)

当我console从sbt 运行时,我如何通过它?

scala sbt read-eval-print-loop

13
推荐指数
1
解决办法
1848
查看次数

仅作为文件的一部分

我的R工作流通常是这样的,我打开一个文件,我输入R命令,我想在一个单独打开的R shell中执行这些命令.

最简单的方法是source('the-file.r')在R里面说.然而,这总是重新加载整个文件,如果处理大量数据可能需要相当长的时间.它还要求我再次指定文件名.

理想情况下,我只想从文件中获取特定行(或行)(我正在使用复制和粘贴不起作用的终端).

source似乎没有提供此功能.有没有另一种方法来实现这一目标?

r read-eval-print-loop

13
推荐指数
2
解决办法
2545
查看次数

从Racket中的REPL发出HTTP GET

我觉得我错过了一些东西,但是在仔细阅读了net/url的文档并且一般地进行了探讨后,我无法找到从交互式提示中发出GET请求的方法.基本上,我想模仿我的python工作流来寻找一个网站:

response = urlopen("http://www.someurl.com")
Run Code Online (Sandbox Code Playgroud)

在Racket中这是可行的吗?

scheme http racket read-eval-print-loop

13
推荐指数
2
解决办法
1397
查看次数

使用clojure.main/repl时,如何获得类似readline/rlwrap的功能?

当我使用repl函数时,clojure.main如何从REPL获得类似readline(或类似rlwrap)的功能

背景这是我在利用和自定义break功能,从喜的Clojure的第一版.我在lein replREPL中使用它.当我的"断点"开始时,Leiningen的REPL的类似readline的功能消失了,这有点不方便.我的肌肉记忆让我很快被击中Enter.在我能够阻止自己之前,我已经在我的终端中找到了这个:

debug=> ^[[A
CompilerException java.lang.RuntimeException: Unable to resolve symbol: in this context, compiling:(/tmp/form-init13211381000659590518.clj:1:1) 
Run Code Online (Sandbox Code Playgroud)

现在我的REPL卡住了,我必须杀死终端或进程才能离开.如果我能在这个二级REPL中使用readline,或者至少可以防止这个常见问题导致我的调试会话脱轨,我非常喜欢.

clojure readline leiningen read-eval-print-loop rlwrap

13
推荐指数
1
解决办法
498
查看次数

为什么Perl 6 REPL中没有新的运算符定义?

我在试验在Perl 6 REPL上定义运算符时遇到了问题,并注意到它们确实有效,但只有在它们被定义的同一行上使用时才会有效.为什么会这样?

> sub postfix:<!>(Int $x where { $x >= 0 }) { [*] 1..$x }; 6!;
720
> 6!;
===SORRY!=== Error while compiling:
Negation metaoperator not followed by valid infix
------> 6!?;
    expecting any of:
        infix
        infix stopper
Run Code Online (Sandbox Code Playgroud)

operators user-defined-functions perl6 read-eval-print-loop raku

13
推荐指数
1
解决办法
187
查看次数

如何在当前命名空间中获取Python交互式控制台?

我希望我的Python代码在运行代码的过程中使用code.interact()之类的东西启动Python交互式控制台(REPL).但是code.interact()启动的控制台没有看到当前命名空间中的变量.我该怎么做:

了mystring = "你好"

code.interact()

...然后在启动的交互式控制台中,我应该能够输入mystring并获得"hello".这可能吗?我需要将code.interact()的"local"参数设置为什么?这会是什么?该怎么称呼它?

python variables console namespaces read-eval-print-loop

12
推荐指数
1
解决办法
8521
查看次数

7.toBinayString在scala REPL中不起作用,但是在val k = 7时它可以工作

scala> val s = 7.toBinayString 
<console>:7: error: value toBinayString is not a member of Int
       val s = 7.toBinayString 
                 ^

scala> val k = 7
k: Int = 7
scala> k.toBinaryString 
res44: String = 111
Run Code Online (Sandbox Code Playgroud)

由于val k = 7和7被标识为Int,而不是RichInt或java.lang.Integer,我不明白为什么它们的处理方式不同.

为什么会有区别?

scala read-eval-print-loop

12
推荐指数
1
解决办法
874
查看次数

将vi设置为GHCi中的编辑器

如何让vi编辑模式在GHCi中工作?

我使用的是版本7.10.3.

我试过了Prelude> :set editor vi,但没有效果.

我也有这些台词~/.inputrc.

set editing-mode vi
set keymap vi
Run Code Online (Sandbox Code Playgroud)

.

vim haskell ghci archlinux read-eval-print-loop

12
推荐指数
1
解决办法
1881
查看次数

具有异步的节点repl等待

我想在节点repl中添加对async/await的支持

发布此问题:https://github.com/nodejs/node/issues/8382

我试过使用这个https://github.com/paulserraino/babel-repl但它缺少async await suppport

我想使用这个片段

const awaitMatcher = /^(?:\s*(?:(?:let|var|const)\s)?\s*([^=]+)=\s*|^\s*)(await\s[\s\S]*)/;
const asyncWrapper = (code, binder) => {
  let assign = binder ? `root.${binder} = ` : '';
  return `(function(){ async function _wrap() { return ${assign}${code} } return _wrap();})()`;
};

// match & transform
const match = input.match(awaitMatcher);
if(match) {
  input = `${asyncWrapper(match[2], match[1])}`;
}
Run Code Online (Sandbox Code Playgroud)

如何将此代码段添加到节点repl上的自定义eval?

节点repl中的示例:

> const user = await User.findOne();
Run Code Online (Sandbox Code Playgroud)

node.js async-await read-eval-print-loop ecmascript-2017

12
推荐指数
3
解决办法
2554
查看次数