当我在LightTable中输入(clojure-version)到我的repl时,我得到"1.5.1"输出.有没有办法升级到1.6.0?
我假设它正在从Leiningen(我的机器上的2.3.4)中绘制Clojure版本,其中装有1.5.1开箱即用.如何确保Leiningen和LightTable都使用最新版本的Clojure?我google了,找不到任何明确的答案.
我确实找到了这个问题,但它没有具体解决我的问题.有没有像我可以调用的"lein update"命令自动化这个过程,LightTable会识别和接收哪个,或者这是一厢情愿的想法?
如果我尝试在emacs cider-repl中评估以下代码,则会按预期返回nil,但不会在repl缓冲区或控制台中进行打印.如何按预期打印出来?
(dotimes [i 5]
(.start
(Thread.
(fn []
(Thread/sleep (rand 500))
(println (format "Finished %d on %s" i (Thread/currentThread)))))))
;=> nil
Run Code Online (Sandbox Code Playgroud)
但这样做很好:
(println (format "Finished 1 on %s" (Thread/currentThread)))
;=> Finished 1 on Thread[nREPL-worker-18,5,main]
----------- mini-buffer -----------------
nil
Run Code Online (Sandbox Code Playgroud) 前段时间,我在命令行终端中将 Sublime text 2 设置为 GIT 的默认编辑器。我现在想将其更改为 LightTable,但遇到了一些麻烦。我已将VISUAL和EDITOR环境变量设置为LightTable,这对大多数扩展来说都有效。但即使我也使用此命令的几个变体将 .gitconfig 文件编辑器变量设置为LightTable :
git config --global core.editor "'/Applications/LightTable.app' -w"
Run Code Online (Sandbox Code Playgroud)
和这个:
export GIT_EDITOR=LightTable
Run Code Online (Sandbox Code Playgroud)
它继续使用 sublime text 2 打开 .md 文件。其他文件扩展名也可以使用 TextEdit 或其他应用程序打开。有没有一种简单的方法可以控制混乱并根据扩展设置我的默认打开应用程序?我已阅读open的手册页,其中提到了 LaunchServices,但我在硬盘上找不到它。我在运行 OSX 的 mac 上使用 bash 和 Unix(Darwin)。提前致谢!
我已经使用自制软件安装了 cassandra,并尝试创建一个超级用户管理员帐户。当我输入时sudo cqlsh -u cassandra -p cassandra出现此错误:
Python Cassandra driver not installed, or not on PYTHONPATH.
You might try "pip install cassandra-driver".
Python: /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
Module load path: ['/usr/local/Cellar/cassandra/2.1.2/bin', '/Library/Python/2.7/site-packages/cql-1.4.0-py2.7.egg', '/Library/Python/2.7/site-packages/thrift-0.9.2-py2.7-macosx-10.10-intel.egg', '/Library/Python/2.7/site-packages/ccm-2.0.2-py2.7.egg', '/Library/Python/2.7/site-packages/tailer-0.3-py2.7.egg', '/Library/Python/2.7/site-packages', '/Library/Python/2.7/site-packages/psutil-2.2.0-py2.7-macosx-10.10-intel.egg', '/Library/Python/2.7/site-packages/pip-6.0.6-py2.7.egg', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']
Error: No module named cassandra
Run Code Online (Sandbox Code Playgroud)
当我在没有 sudo 的情况下执行此操作时,我可以使用默认登录名进入 cqlsh 。问题是,当我输入 时CREATE USER admn WITH PASSWORD 'pw' SUPERUSER;,会返回以下内容:
code=2100 [Unauthorized] message="Only superusers are allowed to perform CREATE USER queries"
当我看到这个时,我想,没问题,进入我的 cassandra.yaml …
我正在使用"Web开发与Clojure"一书来制作一个教程留言簿应用程序,并遇到了障碍.自本书发布以来,似乎有些库及其功能已经更新,导致我对Web开发的介绍略显坎坷.我能够通过更新依赖关系来解决大多数问题,当我不能,或者使用旧版本的库时,我不能,但这个策略已经达到极限,我遇到了一个棘手的问题.当我尝试在本地主机服务器上运行我的应用程序时,我得到了这个堆栈跟踪:
Exception in thread "main" java.lang.RuntimeException: No such var: db/get-user, compiling:(guestbook/routes/auth.clj:38:14)
at clojure.lang.Compiler.analyze(Compiler.java:6380)
at clojure.lang.Compiler.analyze(Compiler.java:6322)
at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3573)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6562)
at clojure.lang.Compiler.analyze(Compiler.java:6361)
at clojure.lang.Compiler.access$100(Compiler.java:37)
at clojure.lang.Compiler$LetExpr$Parser.parse(Compiler.java:5973)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560)
at clojure.lang.Compiler.analyze(Compiler.java:6361)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548)
at clojure.lang.Compiler.analyze(Compiler.java:6361)
at clojure.lang.Compiler.analyze(Compiler.java:6322)
at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5708)
at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5139)
at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3751)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6558)
at clojure.lang.Compiler.analyze(Compiler.java:6361)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6548)
at clojure.lang.Compiler.analyze(Compiler.java:6361)
at clojure.lang.Compiler.access$100(Compiler.java:37)
at clojure.lang.Compiler$DefExpr$Parser.parse(Compiler.java:529)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6560)
at clojure.lang.Compiler.analyze(Compiler.java:6361)
at clojure.lang.Compiler.analyze(Compiler.java:6322)
at clojure.lang.Compiler.compile1(Compiler.java:7148)
at clojure.lang.Compiler.compile(Compiler.java:7219)
at clojure.lang.RT.compile(RT.java:398)
at clojure.lang.RT.load(RT.java:438)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5018.invoke(core.clj:5530)
at clojure.core$load.doInvoke(core.clj:5529)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5336)
at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
at …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用递归来遍历 Clojure 中任意嵌套向量和映射的树,并返回仅包含关键字(包括顶部)的向量。
因此应返回以下示例数据:
[:top :top :top :top :top :top :top :top :bottom :bottom :bottom :bottom :bottom :bottom :bottom :bottom :bottom :bottom :bottom :bottom],
但没有特定的顺序。
有人可以帮我正确地做到这一点吗?以下是我到目前为止所拥有的。
(def sample [{:top {:top {:top [:bottom {:top {:top [:bottom :bottom :bottom]}} :bottom :bottom :bottom]}}},
{:top {:top [:bottom :bottom :bottom]}},
{:top [:bottom :bottom]}])
(defn make-flat [graph]
(loop [graph graph]
(if (every? keyword? graph) graph
(recur (into graph (flatten (seq (first (filter #(not (keyword? %)) graph)))))))))
(make-flat sample)
Run Code Online (Sandbox Code Playgroud) 我有这样的地图:
(def my-map {43423 43.3, 63452 32.02, 823828 67.43, ...})
Run Code Online (Sandbox Code Playgroud)
以及不同顺序的键向量:
(def my-keys [63452 823828 43423 ...])
Run Code Online (Sandbox Code Playgroud)
如何在my-map上调用my-keys向量来提取值并保持向量的顺序,如下所示?
;=> [32.02 67.43 43.3 ...]
Run Code Online (Sandbox Code Playgroud)
只要维护订单,返回的任何数据类型都可以.