Programming Clojure学习笔记——开始
来源:互联网 发布:对印自卫反击战 知乎 编辑:程序博客网 时间:2024/05/16 12:52
1.1 为什么选择Clojure?
1. Clojure是优雅的相对其他语言,实现相同的功能,Clojure程序更短。因此Clojure程序更加容易构建发布和维护。如以下分别为Java和Clojure实现判断字符串是否为空白字符串的函数:
Java代码:
public class StringUtils {
public static boolean isBlank(String str) {
int strLen;
if (str == null || (strLen = str.length()) == 0) {
return true;
}
for (int i = 0; i < strLen; i++) {
if ((Character.isWhitespace(str.charAt(i)) == false)) {
return false;
}
}
return true;
}
}
Clojure代码:
(defn blank? [s] (every? #(Character/isWhitespace %) s))
2. Clojure是一种Lisp实现
为什么实现Lisp?
(1) Lisp的核心很小,几乎没有语法,但有功能强大的宏技术。在Clojure中,你可以利用宏添加自定义语言特性。
(2) 代码也是数据。
(3) Lisp的语法消除了操作符的优先级和关联性。完全的括号表达式,绝对不会有歧义。
3. Clojure是一种函数编程语言
函数语言特性:
(1) 函数是一流对象,可以像其他数据类型一样使用,可以运行时创建,传递,返回等
(2) 数据不可改变
(3) 纯粹的函数,没有副作用
对于很多任务,函数编程更容易理解,更不容易出错,更容易重用。
4. 简化并行编程
Clojure提供比其他函数编程语言更好的并行性。Clojure通过软件事务性存贮(STM)来访问可变数据。STM比Java锁机制更高级的线程安全方法。
5. Clojure拥抱Java虚拟机
Clojure让你可以直接简洁地访问Java,可以直接调用任意Java API。
- Programming Clojure学习笔记——开始
- Programming Clojure学习笔记——开始
- Programming Clojure学习笔记——开始
- Programming Clojure学习笔记——探索Clojure
- Programming Clojure学习笔记——探索Clojure
- Programming Clojure学习笔记——探索Clojure
- Programming Clojure学习笔记——探索Clojure
- Programming Clojure学习笔记——探索Clojure
- Programming Clojure学习笔记——探索Clojure
- Programming Clojure学习笔记——前言
- Programming Clojure学习笔记——并发
- Programming Clojure学习笔记——并发
- Programming Clojure学习笔记——并发
- Programming Clojure学习笔记——并发
- Programming Clojure学习笔记——并发
- Programming Clojure学习笔记——宏
- Programming Clojure学习笔记——宏
- Programming Clojure学习笔记——宏
- FFmpeg windows平台编译
- JQuery 动画显示和隐藏效果
- 待学
- Programming Clojure学习笔记——前言
- Redis详细介绍
- Programming Clojure学习笔记——开始
- Android开发环境搭建
- 写 飞秋 程序,就是把简单的事情重复的做好
- Programming Clojure学习笔记——开始
- 论坛数据库命名
- 研究生教你查文献!!!好文
- HTML的第三次课后感想——计科1104 张淑君
- Programming Clojure学习笔记——开始
- 关于虚拟内存的分析