Clojure程序设计

本书特色

[

  《clojure程序设计》是一部clojure编程经典之作,由clojure之父作序推荐;
  针对clojure 1.3版本,介绍clojure的方方面面。

]

内容简介

[

  clojure是一种基于java虚拟机的动态编程语言。它功能强大,支持函数式编程,简化了并发编程,并且能调用java程序。正是这些优点,使其赢得了众多程序员的青睐。  《clojure程序设计》是介绍clojure编程语言和程序设计的经典之作。第2版针对clojure
1.3进行了全面的更新。全书共包括10章,分别介绍了clojure概览和基本特性、序列和函数式编程、并发编程模型、协议和数据类型、宏、多重方法,以及clojure对java的调用。*后提供了一个完整了解clojure应用开发全过程的实例。  《clojure程序设计》适合有不同语言背景而想要学习和了解clojure编程的程序员阅读。函数式程序员、java和c#程序员、lisp程序员,以及perl、python和ruby程序员,都能够通过阅读本书得到不同程度的收获。

]

作者简介

[

  Stuart Halloway Clojure/core成员、Relevance公司CTO。 Aaron Bedra
Clojure/core成员,在担任Relevance公司开发者期间,他成为一名技术领袖、演讲家和作家。他对Clojure语言及其支持库贡献颇多,同时也是Clojure社区中的活跃分子。Aaron牵头开发了一些商业的Clojure项目。目前他在Groupon工作。

]

目录

第1章 启航1.1 为什么是clojure1.1.1 clojure非常优雅1.1.2 clojure是lisp的再度崛起1.1.3 为什么是lisp1.1.4 它是lisp,但括号少了1.1.5 clojure是函数式语言1.1.6 clojure简化了并发编程1.1.7 clojure与java虚拟机彼此亲密无间1.2 clojure编程快速入门1.2.1 使用repl1.2.2 特殊变量1.2.3 添加共享状态1.3 探索clojure的程序库1.3.1 require和use1.3.2 查找文档1.4 小结第2章 探索clojure2.1 形式2.1.1 使用数值类型2.1.2 符号2.1.3 字符串与字符2.1.4 布尔值与nil2.1.5 映射表、关键字和记录2.2 读取器宏2.3 函数2.3.1 匿名函数2.3.2 何时使用匿名函数2.4 变量、绑定和命名空间2.4.1 绑定2.4.2 解构2.4.3 命名空间2.5 调用java2.5.1 访问构造函数、方法和字段2.5.2 javadoc2.6 流程控制2.6.1 分支结构与if2.6.2 用do引入副作用2.6.3 循环与loop/recur2.7 我的for循环哪儿去了2.8 元数据2.9 小结第3章 一切皆序列3.1 一切皆序列3.2 使用序列库3.2.1 创建序列3.2.2 过滤序列3.2.3 序列谓词3.2.4 序列转换3.3 惰性和无限序列3.4 java亦可序化3.4.1 序化java容器3.4.2 序化正则表达式3.4.3 序化文件系统3.4.4 序化流3.4.5 序化xml3.5 调用特定于结构的函数3.5.1 列表函数3.5.2 向量函数3.5.3 映射表函数3.5.4 集合函数3.6 小结第4章 函数式编程4.1 函数式编程理念4.1.1 纯函数4.1.2 持久性数据结构4.1.3 惰性和递归4.1.4 引用透明性4.1.5 fp的优势4.1.6 6条规则4.2 怎样偷个懒4.2.1 尾递归4.2.2 自递归与recur4.2.3 惰性序列4.2.4 聊聊变现4.2.5 丢弃头元素4.3 懒上加懒4.4 再议递归4.4.1 转换为自递归4.4.2 采用trampolining技术4.4.3 用惰性化替代递归4.4.4 用快存为递归抄条近路4.5 小结第5章 状态5.1 并发、并行和锁定5.2 引用与软事务内存5.2.1 ref-set5.2.2 事务的属性5.2.3 alter5.2.4 stm的工作原理:mvcc5.2.5 commute5.2.6 alter优先5.2.7 为引用添加验证5.3 使用原子进行非协同、同步的更新5.4 使用代理进行异步更新5.4.1 代理的验证与错误处理5.4.2 在事务中包含代理5.4.3 统一的更新模型5.5 用变量管理线程内状态5.5.1 远距离作用5.5.2 用于java回调api5.6 clojure贪吃蛇5.6.1 函数式模型5.6.2 使用stm建立可变模型5.6.3 贪吃蛇的gui5.6.4 没有引用的贪吃蛇5.7 小结第6章 协议和数据类型6.1 针对抽象编程6.2 接口6.3 协议6.4 数据类型6.5 记录6.6 具体化6.7 小结第7章 宏7.1 何时使用宏7.2 编写流程控制宏7.2.1 特殊形式、设计模式和宏7.2.2 宏展开7.2.3 when与when-not7.3 让宏更加简单7.3.1 语法引述、解引述和解引述拼接7.3.2 在宏内部创建名称7.4 宏的分类7.4.1 有条件的求值7.4.2 创建变量7.4.3 java互操作7.4.4 延迟求值7.4.5 对求值进行包装7.4.6 避免lambda表达式7.5 小结第8章 多重方法8.1 没有多重方法的日子8.2 定义多重方法8.2.1 调度是继承感知的8.2.2 多重方法的默认值8.3 调度不简单8.4 创建特设分类法8.5 何时应该使用多重方法8.5.1 inspector8.5.2 clojure.test8.5.3 反例8.6 小结第9章 极尽java之所能9.1 异常处理9.1.1 保持简单的异常处理9.1.2 清理资源9.1.3 响应异常9.2 与整数搏斗9.3 性能优化9.3.1 使用基本类型提升性能9.3.2 添加类型提示9.4 在clojure中创建java类9.4.1 创建java代理9.4.2 使用java容器9.5 真实世界的例子9.5.1 真正的持续循环9.5.2 日志9.5.3 配置9.6 小结第10章 搭建应用10.1 为电码译员游戏计分10.2 测试计分器10.2.1 手工构造输入10.2.2 运行测试10.2.3 验证输出10.2.4 回归测试10.3 test.generative10.3.1 生成数据10.3.2 程序化验证10.3.3 defspec10.3.4 运行测试10.3.5 规格执行失败时10.3.6 计分函数的产生式测试10.4 创建用户界面10.4.1 该是时候处理状态了10.4.2 玩家界面10.5 部署代码10.5.1 procfile10.5.2 heroku库10.5.3 git10.5.4 安置你的应用10.5.5 部署10.6 小结附录 编辑器参考书目

封面

Clojure程序设计

书名:Clojure程序设计

作者:[美]哈罗威,(美)拜卓 著,温瑞云 译

页数:253

定价:¥49.0

出版社:人民邮电出版社

出版日期:2013-04-01

ISBN:9787115308474

PDF电子书大小:153MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注