Raku学习手册
brian d foy
谢连宝, 乔莹 等译
出版时间:2020年11月
页数:500
“正如他在《LearningPerl》一书中对Perl语言的介绍, brian又用简洁、平实的文字解释了Perl 6语言。”
——chromatic, Perl设计小组成员(2003-2011)
“尽管多年来我一直在使用Perl 6,仍然能够从这本全面详尽的佳作中学到很多。如果初学这个语言时能有这样一本书,我的生活会轻松得多。”
——Laurent Rosenfeld, 《Think Perl 6》作者

不论你是一名程序员、系统管理员,还是Web黑客,如果刚开始学习Raku(以前叫作Perl 6),那么这本书正是你需要的。Raku是一种新语言,它是Perl语言的重生之作,可以用于几乎所有任务,从小的修修补补到完整的Web应用都适用。这本实用教程将带领你入门。
本书作者(同时也是《MasteringPerl》的作者)为这种新的编程语言提供了全面详尽的介绍。这本指南的每一章都包含一些练习,帮助你边学边用,实践新学习的知识。其他书可能只会单纯地教你如何用Raku编程,这本书则会让你成为一名真正的Raku程序员。
本书内容包括:
● 数字、字符串、代码块和positional。
● 文件、目录和输入/输出。
● 关联、子例程、类和角色。
● junction和set。
● 正则表达式和内置文法。
● 并发特性:promise、supply和channel。
● 控制外部程序和其他高级特性。
  1. 前言
  2. 第1章 概论
  3. 1.1 为什么使用Perl 6?
  4. 1.2 REPL入门
  5. 1.3 阅读文档
  6. 1.4 基本语法
  7. 1.4.1 项
  8. 1.4.2 操作符和表达式
  9. 1.4.3 语句
  10. 1.4.4 代码块
  11. 1.4.5 注释
  12. 1.4.6 空白隐身
  13. 1.4.7 对象和类
  14. 1.5 变量
  15. 1.5.1 简单输出
  16. 1.5.2 词法作用域
  17. 1.5.3 预定义变量
  18. 1.6 建立和运行一个程序
  19. 1.7 小结
  20. 第2章 猜数
  21. 2.1 绑定和赋值
  22. 2.2 MAIN 程序
  23. 2.2.1 程序参数
  24. 2.2.2 提示输入值
  25. 2.3 字面数
  26. 2.4 数值操作
  27. 2.5 条件执行
  28. 2.5.1 布尔值
  29. 2.5.2 比较
  30. 2.5.3 条件分支
  31. 2.6 汇总
  32. 2.7 小结
  33. 第3章 数字
  34. 3.1 数值类型
  35. 3.2 整数
  36. 3.2.1 类型约束
  37. 3.2.2 智能匹配
  38. 3.3 有理数
  39. 3.4 虚数和复数
  40. 3.5 非常小和非常大的数
  41. 3.6 数值层次结构
  42. 3.7 小结
  43. 第4章 字符串
  44. 4.1 字面量引号
  45. 4.2 转义字符串
  46. 4.2.1 引号副词
  47. 4.2.2 字符串操作符和方法
  48. 4.2.3 查看字符串
  49. 4.2.4 标准字素
  50. 4.2.5 字符串比较
  51. 4.2.6 提示输入
  52. 4.2.7 数字到字符串转换
  53. 4.2.8 字符串到数字转换
  54. 4.3 插值字符串
  55. 4.4 Here Doc
  56. 4.5 Shell 字符串
  57. 4.6 更酷的引号
  58. 4.7 小结
  59. 第5章 基本代码块
  60. 5.1 代码块
  61. 5.1.1 词法作用域
  62. 5.1.2 控制结构
  63. 5.1.3 Phaser
  64. 5.1.4 存储代码块
  65. 5.1.5 有参数的代码块
  66. 5.2 简单子例程
  67. 5.3 Whatever代码
  68. 5.4 小结
  69. 第6章 Positional
  70. 6.1 构造列表
  71. 6.2 范围
  72. 6.3 序列
  73. 6.3.1 无限惰性列表
  74. 6.3.2 收集值
  75. 6.4 单元素访问
  76. 6.4.1 改变一个元素
  77. 6.4.2 多元素访问
  78. 6.5 数组
  79. 6.5.1 构造数组
  80. 6.5.2 插值数组
  81. 6.5.3 数组操作
  82. 6.5.4 列表的列表
  83. 6.5.5 扁平列表
  84. 6.5.6 有趣的子列表
  85. 6.6 组合列表
  86. 6.6.1 Zip操作符Z
  87. 6.6.2 交叉操作符X
  88. 6.6.3 超操作符
  89. 6.6.4 归约操作符
  90. 6.7 过滤列表
  91. 6.8 转换列表
  92. 6.9 列表排序
  93. 6.10 基于多重比较的排序
  94. 6.11 小结
  95. 第7章 出现问题时
  96. 7.1 异常
  97. 7.1.1 捕获异常
  98. 7.1.2 Backtrace
  99. 7.1.3 重新抛出错误
  100. 7.1.4 抛出你自己的异常
  101. 7.1.5 定义你自己的异常类型
  102. 7.2 Failure
  103. 7.3 警告
  104. 7.4 关于异常的箴言
  105. 7.5 小结
  106. 第8章 文件和目录、输入和输出
  107. 8.1 文件路径
  108. 8.1.1 文件测试操作符
  109. 8.1.2 文件元数据
  110. 8.1.3 链接文件和解除链接
  111. 8.1.4 重命名和复制文件
  112. 8.2 管理目录
  113. 8.2.1 目录清单
  114. 8.2.2 创建目录
  115. 8.2.3 删除目录
  116. 8.3 格式化输出
  117. 8.4 标准文件句柄
  118. 8.4.1 标准输出
  119. 8.4.2 标准错误
  120. 8.4.3 标准输入
  121. 8.5 读取输入
  122. 8.5.1 读取行
  123. 8.5.2 读取文件
  124. 8.6 写输出
  125. 8.7 二进制文件
  126. 8.7.1 移动
  127. 8.7.2 写二进制文件
  128. 8.8 小结
  129. 第9章 关联
  130. 9.1 Pair
  131. 9.1.1 副词
  132. 9.1.2 修改Pair
  133. 9.2 Map
  134. 9.2.1 检查键
  135. 9.2.2 从Positional创建Map
  136. 9.2.3 检查可取值
  137. 9.3 Hash
  138. 9.4 多级散列
  139. 9.5 小结
  140. 第10章 使用模块
  141. 10.1 安装模块
  142. 10.2 加载模块
  143. 10.2.1 查找模块
  144. 10.2.2 词法作用
  145. 10.2.3 运行时加载模块
  146. 10.3 从Web获取数据
  147. 10.4 Perl 6中运行Perl 5
  148. 10.5 小结
  149. 第11章 子例程
  150. 11.1 一个基本子例程
  151. 11.1.1 额外参数
  152. 11.1.2 显式返回
  153. 11.2 递归
  154. 11.3 子例程存储在库中
  155. 11.4 位置参数
  156. 11.4.1 Slurpy参数
  157. 11.4.2 二者兼得
  158. 11.4.3 结合Slurpy
  159. 11.4.4 可选和默认参数
  160. 11.4.5 参数特性
  161. 11.4.6 参数约束
  162. 11.5 同名但签名不同
  163. 11.5.1 字面量值参数
  164. 11.5.2 实参个数
  165. 11.5.3 参数类型
  166. 11.6 命名参数
  167. 11.6.1 必要命名参数
  168. 11.6.2 自动的命名参数
  169. 11.6.3 混合参数
  170. 11.7 返回类型
  171. 11.8 小结
  172. 第12章 类
  173. 12.1 第一个类
  174. 12.2 定义方法
  175. 12.2.1 私有方法
  176. 12.2.2 定义子例程
  177. 12.3 对象
  178. 12.3.1 私有属性
  179. 12.3.2 公共属性
  180. 12.4 multi方法
  181. 12.5 继承类型
  182. 12.5.1 检查继承
  183. 12.5.2 Stub方法
  184. 12.6 控制对象创建
  185. 12.6.1 构建对象
  186. 12.6.2 调整对象
  187. 12.7 私有类
  188. 12.8 小结
  189. 第13章 角色
  190. 13.1 为类增加行为
  191. 13.1.1 应用多个角色
  192. 13.2 角色中的方法
  193. 13.3 消除角色冲突
  194. 13.4 匿名角色
  195. 13.5 小结
  196. 第14章 Junction和Set
  197. 14.1 Junction
  198. 14.1.1 any
  199. 14.1.2 all
  200. 14.1.3 one
  201. 14.1.4 none
  202. 14.1.5 一些关于Junction的技巧
  203. 14.2 Set
  204. 14.3 小结
  205. 第15章 正则表达式
  206. 15.1 匹配操作符
  207. 15.1.1 匹配操作符语法
  208. 15.1.2 成功匹配
  209. 15.1.3 定义模式
  210. 15.1.4 预定义模式
  211. 15.2 匹配非字面量字符
  212. 15.2.1 匹配任意字符
  213. 15.2.2 字符的匹配类型
  214. 15.2.3 用户自定义字符类
  215. 15.3 匹配副词
  216. 15.3.1 匹配大小写
  217. 15.3.2 忽略标记
  218. 15.3.3 全局匹配
  219. 15.4 关于模式使用
  220. 15.5 小结
  221. 第16章 更酷的正则表达式
  222. 16.1 量词
  223. 16.1.1 0或多个
  224. 16.1.2 贪婪性
  225. 16.1.3 0或1个
  226. 16.1.4 最小和最大
  227. 16.2 控制量词
  228. 16.3 捕获
  229. 16.3.1 命名捕获
  230. 16.3.2 捕获树
  231. 16.3.3 反向引用
  232. 16.4 包围符和分隔符
  233. 16.5 断言
  234. 16.5.1 锚
  235. 16.5.2 条件
  236. 16.5.3 代码断言
  237. 16.6 候选项
  238. 16.6.1 第一个匹配
  239. 16.6.2 最长Token匹配
  240. 16.7 小结
  241. 第17章 文法
  242. 17.1 一个简单的文法
  243. 17.2 多个规则
  244. 17.3 调试文法
  245. 17.3.1 Grammar::Tracer
  246. 17.3.2 Grammar::Debugger
  247. 17.4 一个简单的动作类
  248. 17.5 避免回溯
  249. 17.6 解析JSON
  250. 17.7 解析CSV
  251. 17.7.1 调整文法
  252. 17.7.2 文法中使用角色
  253. 17.8 小结
  254. 第18章 Supply、Channel和Promise
  255. 18.1 Supply
  256. 18.1.1 多个Tap
  257. 18.1.2 现场Supply
  258. 18.2 Channel
  259. 18.3 Promise
  260. 18.3.1 等待Promise
  261. 18.3.2 等待多个Promise
  262. 18.3.3 管理自己的Promise
  263. 18.3.4 Promise Junction
  264. 18.4 响应式编程
  265. 18.5 小结
  266. 第19章 控制其他程序
  267. 19.1 快速简便
  268. 19.1.1 加引号的命令
  269. 19.1.2 更安全的命令
  270. 19.1.3 写到Proc
  271. 19.2 Proc
  272. 19.3 异步控制
  273. 19.4 小结
  274. 第20章 高级主题
  275. 20.1 单行程序
  276. 20.2 声明符代码块注释
  277. 20.3 Feed操作符
  278. 20.4 分解签名
  279. 20.5 定义你自己的操作符 
  280. 20.6 Perl 5模式
  281. 20.7 异型数组
  282. 20.8 有类型的容器
  283. 20.9 NativeCall
  284. 20.10 with 主题
  285. 第21章 结束语
  286. 术语表
  287. 附录 练习答案
  288. 作者介绍
  289. 封面介绍
书名:Raku学习手册
作者:brian d foy
译者:谢连宝, 乔莹 等译
国内出版社:中国电力出版社
出版时间:2020年11月
页数:500
书号:978-7-5198-4800-2
原版书书名:Learning Raku (Perl 6)
原版书出版商:O'Reilly Media
brian d foy
 
brian d foy是一个多产的Perl培训师和作家,他主办了“The Perl Review”,通过教育、咨询、代码审查等等帮助人们使用和了解Perl。他经常在Perl会议上发表演说。他是《Learning Perl》、《Intermediate Perl》和《Effective Perl Programming》的合作者,另外还单独著有《Mastering Perl》。1998年到2009年期间,他任职于Stonehenge Consulting Services担任讲师和作者。从他成为一个物理学研究生开始就是一个Perl用户,另外从他拥有自己的第一台计算机开始就是一个顽固的Mac用户。他成立了第一个Perl用户组(New York Perl Mongers),另外还创建了非盈利的Perl Mongers公司,帮助建立了全世界200多个Perl用户组。他维护着核心Perl文档的perlfaq部分,另外还维护着CPAN上的很多模块以及一些独立的脚本。
 
 
本书封面上是一只蛱蝶(学名:Hamadryas)。蛱蝶属包括多个相关的蝴蝶物种。蛱蝶生活在南美和中美地区,有些物种甚至北至亚利桑那州都有发现。仅哥斯达黎加一地就能找到9个不同的物种。
蛱蝶常被称为饼干蝴蝶,因为雄性蛱蝶在展示领土时会发出很独特的声音。雄性蛱蝶在植物和树枝中等待雌性蛱蝶的到来,同时发出卡嗒卡嗒的声音防范捕食者和其他雄性蛱蝶。
蛱蝶的突出特点是它们的伪装色,可以让它们混杂在周围环境中。与其他种类的蝴蝶不同,它们并不食用花蜜。实际上,它们以腐烂的水果、树的汁液和动物粪便为食。
O’Reilly书的很多封面动物都是濒危动物,所有这些动物对我们的世界都很重要。如果想更多地了解如何提供帮助,请访问animals.oreilly.com。
封面图片来自Insects Abroad。
购买选项
定价:128.00元
书号:978-7-5198-4800-2
出版社:中国电力出版社