Marvin's Blog【程式人生】
Ability will never catch up with the demand for it
Home
Tags
Categories
Topics
Scheme
27
Feb 2021
The Scheme Programming Language读书笔记【九】
The Scheme Programming Language 读书笔记,chapter 10. Chapter 10. Libraries and Top-Level Programs R6RS定义了程序库以及顶级程序。库采用的命名方式有点特别,形如:(a), (a b), …
25
Feb 2021
The Scheme Programming Language读书笔记【八】
The Scheme Programming Language 读书笔记,chapter 8, 9. Chapter 8. Syntactic Extension 语法扩展(syntactic extensions)也就是宏(macros)用于扩展程序的语法,消除重复模式。 语法 …
24
Feb 2021
The Scheme Programming Language读书笔记【七】
The Scheme Programming Language 读书笔记,chapter 7. Chapter 7. Input and Output 所有的IO操作都是通过ports来完成的。Port是一个指向数据流的指针。一个Port可以是只为输入服务,或者只为输出服务的,或 …
21
Feb 2021
The Scheme Programming Language读书笔记【六】
The Scheme Programming Language 读书笔记,chapter 6下半部. Chapter 6. Operations on Objects Section 6.7. Characters 字符是原子性的对象,用来表示字母,数字字符,特殊名号比如$或 …
19
Feb 2021
The Scheme Programming Language读书笔记【五】
The Scheme Programming Language 读书笔记,chapter 6上半部. Chapter 6. Operations on Objects 本章介绍对象之上的操作,包括连对,数字,单字符,字符串,矢量,字节矢量,符号,布尔值,哈希表,以及枚举类型。 …
18
Feb 2021
The Scheme Programming Language读书笔记【四】
The Scheme Programming Language 读书笔记,chapter 5. Chapter 5. Control Operations 本章涉及控制结构相关的语法形式。 Section 5.1. Procedure Application 形如(expr0 …
15
Feb 2021
The Scheme Programming Language读书笔记【三】
The Scheme Programming Language 读书笔记,chapter 4. Chapter 4. Procedures and Variable Bindings 执行诀和变量绑定是Scheme程序的两大基石。 Section 4.1. Variable …
14
Feb 2021
The Scheme Programming Language读书笔记【二】
The Scheme Programming Language 读书笔记,chapter 3. Chapter 3. Going Further Section 3.1. Syntactic Extension 前面提到,scheme有核心语法和扩展语法。后者可以展开变成前者。核 …
13
Feb 2021
The Scheme Programming Language读书笔记【一】
The Scheme Programming Language 读书笔记,chapter 1,2. Chapter 1 Introduction scheme支持结构化的数据类型,比如strings, lists以及vectors,还有传统的数据类型,比如numbers …
08
Nov 2020
The Little Schemer读书笔记(九)
The Little Schemer总结篇。 读后感 特点,采用对话的形式来引导阅读,希望读者能够自行给出对于所涉及概念的定义。但是书中还是列举了许多Laws和Amendments,也就是条例和修正案,来帮助读者记住相关原理。 迭代和递归在基本概念上有所差异。假设处理对象是一串念 …
06
Nov 2020
The Little Schemer读书笔记(八)
第十章 What Is the Value of All of This? 一个entry是一对list,这对list的第一项是一个set,并且这两个list具有相同的节点数。一个例子: ((appetizer entree beverage) (pate boeuf vin)) …
22
Oct 2020
The Little Schemer读书笔记(七)
第9章 … and Again, and Again, and Again, … 开场先介绍一个looking函数: (define looking (lambda (a lat) (keep-looking a (pick 1 lat) lat))) looking函数的使用举 …
03
Oct 2020
The Little Schemer读书笔记(六)
The Little Schemer第八章 Lambda the Ultimate学习笔记。 首先出现的是rember-f,它是rember的演化版,接受一个额外的test?作为测试条件,来判断是否要移除目标节点。 (define rember-f (lambda (test? …
01
Oct 2020
The Little Schemer读书笔记(五)
The Little Schemer第七章Friends and Relations阅读笔记。 第七章首先出场的是set?,用来判断一个lat(list of atoms)中是否有重复的atom。 (define set? (lambda (lat) (cond ((null? …
26
Sep 2020
The Little Schemer读书笔记(四)
第五章(On My Gawd*: It’s Full of Stars)以及第六章(Shadows) 之前的章节涉及的list一般都是由atom构成,这章开始处理list of list,也就是表中表。原先一个方向的递归,现在要变成两个方向了。如果原先的递归称为右递归的话,现在要 …
24
Sep 2020
The Little Schemer读书笔记(三)
第四章(Numbers Games) 这一章使用递归来表达正整数。首先介绍两个操作:add1和sub1,分别对数进行加一和减一操作。 add1的定义如下: (define add1 (lambda (n) (+ n 1))) sub1的定义如下: (define sub1 …
20
Sep 2020
The Little Schemer读书笔记(二)
《The Little Schemer》读书笔记(第三章)。 第三章(Cons the Magnificent)伊始,书中引入了另一个函数rember(remove member的缩写)。rember从lat(list of atoms)中移除一个atom,所以需要把list拆开 …
19
Sep 2020
The Little Schemer读书笔记(一)
《The Little Schemer》读书笔记(第一章、第二章)。 本书特点,采用对话的形式来引导阅读,希望读者能够自行给出对于所涉及概念的定义。但是书中还是列举了许多Laws和Commandments,也就是条例和戒律,来帮助读者记住相关原理。 在Scheme中,变量的数据类 …