我正在努力学习clojure.spec
.在启动构建工具中设置clojure项目时,我在需要clojure.spec.alpha时遇到以下错误.
Compiling ClojureScript...
• js/app.js
No such namespace: clojure.spec.alpha, could not locate clojure/spec/alpha.cljs, clojure/spec/alpha.cljc, or Closure namespace "clojure.spec.alpha" in f
ile src/cljs/flowparser/app.cljs
Elapsed time: 0.141 sec
Run Code Online (Sandbox Code Playgroud)
我的启动配置如下:
(def +version+ "0.0.1-SNAPSHOT")
(def +description+ "Parses graph DSL for VADE")
(set-env!
:source-paths #{"src/cljs"}
:resource-paths #{"resources"}
:dependencies '[
[org.clojure/clojure "1.9.0-alpha16"]
[org.clojure/clojurescript "1.9.521"]
[org.clojure/core.async "0.3.442"]
[adzerk/boot-cljs "2.0.0" :scope "test"]
[adzerk/boot-cljs-repl "0.3.3" :scope "test"]
[adzerk/boot-reload "0.5.1" :scope "test"]
[pandeiro/boot-http "0.8.0" :scope "test"]
[com.cemerick/piggieback "0.2.1" :scope "test"]
[org.clojure/tools.nrepl "0.2.13" :scope "test"]
[weasel "0.7.0" :scope "test"] …
Run Code Online (Sandbox Code Playgroud) 我正在尝试按项目的数据类型合并Clojure列表中的项目。
我试着用conj
,merge
,into
合并项目。但是,当列表项具有相同的数据类型时,它们似乎可以完美地工作。
(def args '({:a 1} "Heading"))
(def args2 ({:b 2}))
(conj args args2)
Run Code Online (Sandbox Code Playgroud)
我得到的输出是({:b 2} {:a 1} "Heading")
。相反,我想实现({:b 2 :a 1} "Heading")
。