Abstract A set of rules about Datatype of variable, Expression, Function, and their interactions Important It covers Subtyping Compile-time Type vs Run-time Type Generics Type Inference (类型推断) Custom Datatype