型のない(もしくは型が隠蔽されている)環境or動的言語

生まれて初めてPHPを触ったときには、「なぜこの言語は動くのだろう?」と本気で悩みました。
使い始めてすぐには「$のついている識別子は全部文字列。数値も文字列同士で計算して、それを文字列に直す」という話だったのが、「いや実はarray()という特殊な型があって、これだけ操作が例外」となり、「いや実は数値型という型があって、使うときには文字列としても使えるんだけど中では数値で持っていて」となっていくうちに、「型は見えないけど実はあって、型同士は暗黙的に変換されてよしなな型になる」という緩さに驚いた記憶があります。マシン語出身なので、ポインタ(参照)の指し示している先がなんなのかを明らかにしないと怖くてさわれない原体験が。
しばらく使ううちに、この「緩い型付け」もしくは「型無し」の言語というのは使い方によっては強力なんだと気づきました・・が、PHPは弊害の側が大きく見えてしまうのがちょっとね。
今はポインタの先が何であってもあまり気にしません。ポインタの先が「プリミティブ」であることはあまりなく、だいたいオブジェクトだから。Java様々です(Javaはプリミティブに対するポインタを持てない)。