Union types 유니온은 실행시간의 다른 시간들동안 다른 타입의 값들을 저장할 수 있도록 하는 타입이다. 단점은 type checking이 dynamic해야한다는 것이며 이는 discriminant라는 indicator에 의해서 이루어진다. 반면 C/C++에서는 유니온 타입의 type checking을 지원하지 않는데 이런한 유니온 타입을 Free Union 이라고 한다. Free Union은 안전하지 않은 방법이며 Java나 C# 같이 reliability가 높은 언어들은 유니온 자체를 지원하지 않는다. Pointer types and Reference types 포인터 타입 변수는 indirect addressing과 dynamic memory를 제공한다. 이를 통해 포인터는 dynamicall..