Taking Notes from http://learnyouahaskell.com
Algebraic Data Types
Option 1: data
data ValueName = Value Constructor12data Bool = False | Truedata Shape = Circle Float Float Float | Rectangle Float Float Float Float
Shape is type, but Circle is not.
[]、False 或 5,它们都是不包含参数的值构造子