The Little Schemer - 4th Edition - Daniel P. Friedman

The Little Schemer - 4th Edition

Daniel P. Friedman

出版社

The MIT Press

出版时间

1995-12-21

ISBN

9780262560993

评分

★★★★★
书籍介绍

This delightful book leads you through the basic elements of programming in Scheme (a Lisp dialect) via a series of dialogues with well-chosen questions and exercises. Besides teaching Scheme, The Little Schemer teaches the reader how to think about computation. The authors focus on ten essential concepts of thinking about how to compute and demonstrate how to apply these concepts in inventive ways. The Little Schemer is an excellent book both for the beginner and for the seasoned programmer.

AI导读
核心看点
  • 问答体教学,引导读者掌握递归思维
  • 从基础语法到Y组合子,层层递进
  • 不仅教Scheme,更教如何思考计算
适合谁读
  • 编程初学者,尤其是想学函数式编程者
  • 希望深入理解递归与解释器原理的开发者
  • 对Lisp家族语言及计算机科学理论感兴趣者
读前提醒
  • 务必动手完成书中练习,切勿只看不练
  • 前七章较易,后半部分难度陡增需耐心
  • 建议安装Racket环境,边读边运行代码
读者共识
  • 被公认为函数式编程入门的神作与经典
  • 独特的对话风格让抽象概念变得生动
  • 虽篇幅短小,但蕴含深刻的计算理论智慧

本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。

精彩摘录
  • "... (and ...) 和 (or ...) 都不能被定义成像 (cond ...) 那样的功能, 尽管(and ...) 和 (or ...) 可以通过 (cond ...)表达式的方式表示出来:"
  • "Scheme(或 Lisp) 中的 pair, 其两个元素是含义不同但相关的对象."
  • "从现在开始, 我们将使用等宽字体来表述一个原子."
  • "The Five Rules The Law of Car: the primitive car is defined only for non-empty lists The Law of Cdr: the primitive cdr is defined only for non-empty lists.The cdr of any non-empty list is always another list. The Law of Cons: The primitive cons takes two arguments. The second argument to cons must b"
  • "The First Commandment: Always ask null? as the first question in expressing any function. The Second Commandment: Use cons to build lists. The Third Commandment: When building a list, describe the first typical element,and then cons is onto the natural recursion. The Fourth Commandment: Always chang"
  • "First: When recurring on a list of atomes, lat, ask two questions about it: (null? lat) and else. When recurring on a number, n, ask two questions about it: (zero? n) and else. Second: When building a value with +,always use 0 fro the value of the terminating line, for adding 0 does not change the v"
  • "When recurring on a list of S-expressions, l, ask three question about it: (null? l), (atom? (car l)), and else. Simplify only after the function correct."
  • "The First Commandment (preliminery) Always ask null? as the first question in expressing any function."
目录
((Contents)
(Foreword ix)
(Preface xi)
((l.Toys) 2)
((2. Do It, Do It Again, and Again, and Again ...) 14)

显示全部
用户评论
函数编程和递归入门,问答形式新颖易读。Y Combinator现在还没彻底明白。需要再读。
刚下了一本,159页?但是却标明第4版啊
1到7章很简单,后三章却是另一个难度。第8章让你意犹未尽,这是一种很有意思的技巧,却不知道它具体是怎么运作的。还好看过Y算子,不然第9章就完全如坠雾中了。最好去找找第10章的完整代码,否则就会陷入无尽的代码片段中。总的来说,内容很给人启迪,回味无穷,仿佛自己能给出更精彩的诠释,可实践过却发现真的很难,更感叹作者的不易。
short and inspiring
这个风格实在是太适合做教材了,自问自答、精辟到位,而且知识点是系统化组织起来的。建议软院爱尔兰班FP课程采纳。
不仅是入门
过了十年重新读,教小学生 Y Combinator 太好了啦
世界上不会有“小学生也能逐步看得懂,但是又深刻到是一个学科的基础”这样的书了吧。
文风友好,但是不喜欢,有时候抓不住讲解目的。读起来很柔顺,七八九章突然攀岩,前面的部分很适合作为SCIP的预读章节,可以多翻翻后面三章。卡在SCIP第四章的人留
看过最好的编程书,突然明白为啥国外马斯克扎克伯格等很小的时候编程就很好了
收藏