假设我正在调试代码,其中涉及的一个或多个函数是在memoize. 我将编辑一些代码,在 REPL 中重新加载文件,然后尝试新代码。但如果错误仍然存在,我总是怀疑是因为我还没有修复错误还是因为memoize缓存了错误结果。
那么,除了重新启动 REPL 之外,是否有某种方法可以用来绝对确保 REPL 已memoize丢失内存?
(请注意,消除memoizeREPL 会话期间的调用既乏味,有时甚至不切实际,因为函数的性能可能严重依赖于记忆。)
当我运行时,lein repl我得到了一个精彩的交互式 REPL,并显示以下提示
user=>
Run Code Online (Sandbox Code Playgroud)
我碰巧在应用程序上使用 lein repl (作为控制台),我希望有类似的东西:
user(<environment>)=>
;; e.g. when run in production:
user(PRODUCTION)=>
Run Code Online (Sandbox Code Playgroud)
当它用于访问环境中的 repl/控制台时。
输入python
SSH 后,在命令行中运行 python。如何退出?我想输入新的“SUDO”命令,但无法退出 python“模式”。
vector我错误地重新定义了内置函数。
更具体地说,这就是我所做的:
(def vector [1 2 3 4 5 6])
Run Code Online (Sandbox Code Playgroud)
这就是我想做的:
(def my-vector (vector 1 2 3 4 5 6))
Run Code Online (Sandbox Code Playgroud)
有没有办法“撤销”这个错误,而不需要重新启动 REPL?
即,恢复vector到其默认定义。
所以我遇到了麻烦,每次我评估 Clojure 函数,或者输入 REPL 并调用它时,我都没有得到结果,而是得到类似#function[clojure.core/map/fn--5880].
是什么导致了这个问题?我应该得到像这里的列表这样的结果,但我没有。如果我在 REPL 中定义所有内容并运行它,结果就会显示得很好。
我输入了什么并不重要,任何稍微先进的东西都会导致这种情况。
更多细节:
根据要求。
(def filename "tester.csv")
(defn parse
"Convert a CSV into rows of columns"
[string]
(map #(clojure.string/split % #"\n")))
Run Code Online (Sandbox Code Playgroud)
在 REPL 中:
(parse (slurp filename))
Run Code Online (Sandbox Code Playgroud) 所以,我在玩弄一些字符串时无意中发现了这一点。
(str 111) => "111"
(str 0111) => "73"
Run Code Online (Sandbox Code Playgroud)
这是什么?
使用 Python(通过 cmd)并在其中写入以下内容时:
>>> import random
>>> print("hello"),print("world"),print(random.randint(5,10))
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
hello
world
8
(None, None, None)
Run Code Online (Sandbox Code Playgroud)
现在我不确定为什么解释器返回 的None元组,而不是单个None。
node我在终端上使用或打开 REPL node -i。
玩完之后,我\xe2\x80\x99d喜欢清除这个REPL中的所有内容(主要是我创建的JS\xe2\x80\xaf变量)。有命令可以做到这一点吗?我目前使用.exit后跟node,但我\xe2\x80\x99d 喜欢在不关闭并重新打开 REPL 的情况下执行此操作,并且该.clear命令似乎不起作用。
我想知道我是否可以创建一个Vim插件,将表单发送到lein repl启动的REPL会话.有没有办法将消息发送到现有的jline.ConsoleRunner进程?
有些函数非常通用,我想在任何时候都可以在REPL中使用它们,无论我目前切换到什么命名空间.
有没有办法配置lein repl自动需要一些东西,以便它们全局可用?另一种方法是调用类似的东西(use 'clojure.tools.trace).
clojure ×7
python ×2
built-in ×1
command-line ×1
javascript ×1
jline ×1
leiningen ×1
memoization ×1
node.js ×1
nonetype ×1
output ×1
python-3.x ×1
string ×1
vim ×1