利用现有的插件,在Clojure中添加gzip的功能是很方便的。1. 在project.clj中添加对bk/ring-gzip插件的依赖。:dependencies [bk/ring-gzip "0.1.1"]2. 然后在handle文件中添加引用(:use [ring.middleware.gzi...
分类:
其他好文 时间:
2014-07-31 09:44:15
阅读次数:
189
配置很简单,步骤如下:1. 选择Edit Configurations…2. 选择Clojure REPL -> Remote3. 输入远程服务器的ip和端口。最后点运行就可啦。可以用如下命令指定REPL服务器的端口:lein repl :headless :host 0.0.0.0 :port 9...
分类:
其他好文 时间:
2014-07-29 12:28:56
阅读次数:
277
当在REPL环境中尝试调试template的时候,会发现每次都需要重启REPL才能看到最新的变化。调查后发现,原来是每次启动REPL的时候,原来的template文件都被放到了target目录中,这样Clojure每次都会调用target中的原始模板,而不去理会模板是否已经发生变化(目录结构如下图所...
分类:
其他好文 时间:
2014-07-10 16:17:29
阅读次数:
246
我们要在Java中调用Clojure有两种方法,一种是将Clojure代码生成class文件,另外一种是通过Clojure RT方式直接在java程序中调用Clojure代码。两种方式各有优缺点,第一种方式的优点在于在Java调用class与平常的java代码没有任何区别,而且对IDE友好。并且由于...
分类:
编程语言 时间:
2014-07-02 13:56:25
阅读次数:
305
在Clojure中读取XML是很容易的。比如我们有一个名叫strings.xml文件:1 2 3 FY行情在线4 主页5 读取的步骤如下:1. 在project.clj中添加data.zip的依赖[org.clojure/data.zip "0.1.1"]2. 创建一个reader....
分类:
其他好文 时间:
2014-06-28 12:51:00
阅读次数:
224
偷懒为码农天性之一:能一蹴而就的决不愚公移山,能一劳永逸的决不孜孜不倦!其中一个代码实例就是 动态配置,将不同的场景抽象成通用逻辑加配置,这样就可以“一处代码供全球,不做代码搬运工”,更有甚者是把特殊的代码也变成是动态加载(比如用Groovy, Clojure去做动态加载)。当配置动态代码时,总得把代码上传到服务器,如果代码是通过贴到上传页面的话,Textarea里的代码可没有IDE下那些婀娜多姿...
分类:
其他好文 时间:
2014-06-24 20:30:38
阅读次数:
178
假设我们有两个list,分别是:(def a [“one” “two” “three”])(def b [1 2 3])我们要把它们合为一个键值对应的map,做法很简单:1. 先将a和b合为一个一一对应的list:(map vector a b) => (["one" 1] ["two" 2] ["...
分类:
其他好文 时间:
2014-06-20 23:32:09
阅读次数:
237
首先,我们需要先创建一个lein项目(废话。。)lein new
[项目名称]然后生成Maven的pom.xml文件cd [项目目录]lein pom最后,在InteliJ
IDEA中选择导入Maven项目,选择刚刚生成的pom.xml文件即可。
分类:
其他好文 时间:
2014-06-09 19:13:13
阅读次数:
208
Transactional memory in Clojure is implemented
using Multiversion Concurrency Control
protocolhttp://en.wikipedia.org/wiki/Transactional_memoryhttp:/....
分类:
其他好文 时间:
2014-06-09 15:02:02
阅读次数:
199
1. 准备2. 语法和语义3. 为我们的游戏世界定义数据4. 环顾我们的游戏世界5. 函数式编码风格6. 环游我们的游戏世界7. 构建SPELs8. 创建特殊操作9. 附录10. 为什么没有使用”宏”这个词11. 译者感想
本文翻译自:Casting SPELs in Clojure
1 准备
任何学过Lisp的人都会说List和其它语言有很大的不同.它有很多...
分类:
其他好文 时间:
2014-05-21 15:53:25
阅读次数:
249