pythonの型とC言語の型
pythonの型といえば、数値型、シーケンス型、インスタンス型、などなど
宣言がいらないのであまり意識はしないが、型というものは存在する。
一方、C言語で方といえばint型、char型、float型、などなど
こっちは型宣言やら型変換やら意識しないといけないので嫌でも覚える。
さて、この2つを比べた時、同じ「型」と呼ぶのに違和感を覚えないだろうか。
pythonの型はオブジェクトで、データの格納とその処理方法の両方を担う。
一方C言語の型は単純にデータを格納するだけ。
おかげでメモリの削除なんかを手動でやるはめになったりする。
「pythonのは○○型オブジェクトを省略しているだけだろ」と言われればそうなのかもしれないが、
ここまで扱いが異なる両者を同じ名前で呼ぶのはちょっと違和感。
この辺りをうまいこと表現する名前はないものだろうか。
同じ型と呼ぶなら「変数」と「インスタンス」も呼び方変えなくてよかったような。
そもそも、全部オブジェクトなら○○型って分ける必要ってあるの?
つまりは、C言語だけ書ける後輩にpythonを教える時に戸惑ったというお話。