目标类型检查器:TAT
名字的由来
在这个课程中,我们会实现一个自己的类型检查器,我们把它叫做TAT(发音:/tæt/)。没有什么特别的原因,只是因为它像一个哭脸的颜文字 😭,而且是个回文串,非常有意思。
它的特性
它的基本类型命名会尽量避免和JavaScript已经有的类型名字冲突。比如,我们会用Num
来表示TAT中的数字类型,而不是number
。number
会用来特指JavaScript或者TypeScript中的数字类型。
它是JavaScript的一个超集,且它在语法上是TypeScript的一个子集。
建构的方式
在本节的第一部分,我们会提到TAT的一些特性,局部地讨论一些TAT的定型规则。
并且在第二部分,我们会正式开始介绍TAT的实现框架,和它在根据本节课程裁剪后的变体:TAT-STLC的具体设计和实现。