由于Racket第二周的课程,需要ML第三周的课程的部分知识,所以先来复习ML的第三周课程。
第一节:Building Compound Types
学习目的:给出通用的思考方式来思考如何构建新的类型。
主要内容:
1.数据类型主要分为基本类型和复合类型(其实是内嵌数据类型)。
2.接下来的章节会讲到如何构建自己的复合数据类型。
3.对于任何编程语言而言,有三种方式来构建复合数据类型。分别是each of, one of, and self reference。
3.1 each of:该数据类型包含了集合(t1 t2 ... tn)中的每一个。其中tuples构建的是该类型。int * bool contains an int and an bool
So if it were a triple with a T1, a T2, and a T3, that would be an each of type because values of that compound have a T1 and they have a T2 and they have a T3.三元组
3.2 one of:该数据类型包含了集合(t1 t2 ... tn)其中的一个。其中option构建的是该类型。
通过datatype关键字来构建自己的数据类型
3.3 self reference:该数据类型是递归结构。