Clojure 语言简介

Tapestry 的作者称之为下[url=http://tapestryjava.blogspot.com/2008/12/clojure-hundred-year-language.html]一百年的编程语言[/url]。

[list]
[*]其最吸引人的特性是高质量和高效的 STM (内存事务),对并行性的支持非常有独到之处。多线程不需要锁。
[*]其他的重要特性包括与 Java 的高度互操作能力,引入了更简练的 Java 写法。比如有人用其书写的重用 ant 全部 task 的构建系统仅仅 120 行。
[*]它并非面向对象的,但其 multimethod 的多形性实现比对象继承体系更加灵活和容易使用。
[*]它具有基本和 Java 一样的性能。本身的动态类型 (duck type) 可以简化程序员的工作,你也可以通过增加类型信息 (Type hint) 让它完全不使用反射,从而编译成的字节码与 Java 完全等价。
[*]其强大的宏能力,让你可以自己定义语法和自己的领域语言 (DSL)。
[*]使用 Clojure 开发的框架包括 Web 框架 Compojure ,单元测试框架 test-is 等。与 Clojure 语言本身类似,这些框架也是极为简洁(test-is 仅仅 200~ 行代码),但非常容易理解和书写。
[*]Clojure 是极简主义的,几乎没有语法。也极其简练,其核心源程序仅仅4K 行。远在其发布 1.0 版本以前,它的质量就已经达到了发布水准,几乎没有 Bug。这也说明了作为语言其固有的质量优势。它可以让程序员不容易犯下错误。
[*]Clojure 开发使用 REPL,一个类似于命令行 Shell 的交互工具,写下来的代码可以立即执行。是交互式的开发方式,非常具有乐趣。
[*]已经有了 Eclipse, NetBeans, IDEA 下的开发工具插件,不过目前特性还不是很多,但质量已经可以使用。
[/list]
至于广受指责的括号海洋,那是因为它用括号代替了全部 Java 的大括号来进行范围划分。如果你有个会自动匹配括号的编辑器或 IDE,就不成任何问题。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值