Source: https://web.stanford.edu/~kjytay/courses/stats32-aut2018/Session%201/Variable%20Types.pdf