Pike
このような性質は、動的プログラミング言語としては制限が強すぎるとされることが多い。しかし、C、C++、Java などとは異なり、Pike はより柔軟な型システム(タグ付き共用体)を採用している。このシステムでは、複数の型を格納できる変数を宣言でき、C言語の系統では共用体の境界を無視しないと同じようなことは実現できない。
以下の例は、整数または浮動小数点数を保持できる一つの変数を示したものである。
このように変数が複数のデータ型の値を保持できるため、変数がその時点で保持しているデータ型を知ることができる関数群がある。それらはデータ型名に p を後置した名前であり、intp、floatp、stringp などがある。
さらに、特別なデータ型 "mixed" がある。この場合、任意のデータ型をその変数に代入可能である。
Pike では、値の型を変換する手段として明示的な cast も使うことができる: