息子が大学でプログラミング演習する、Fortranで……え?
息子が大学でプログラミング演習をするらしい。
-Python?
-ううん
-C言語?
-ううん
-ほな、何?
-Fortran
-え? Fortran?
これはまた古い言語を。
曰く、
ということであるらしい。
確かに、そういう面はある。
こちらの記事では13のプログラミング言語で Hello World を書き綴ってみたが、最後の方は飽きてきた。
とにかく、似たり寄ったりなんである。
これはただの Hello world だけであるが、平方根を求めるプログラムにしても、階乗を求めるプログラムにしても、フィボナッチ数列を出力するプログラムにしても、やはり似たり寄ったりになりそうである。
プログラミング演習と聞いて最初は直感的に「昨今なら Python か」と思いはしたが、よくよく考えてみると初学に Python ってどうだろうという気もしてきた。Python にはデータを宣言するという概念がない。Python の方でよきに計らってくれるわけであるが、データ領域の確保はプログラムの要である。よきに計らってもらうとデータ領域をイメージしにくいのではないか。そういう言語が初学であるとすると、
「データ領域? 何それ?」プログラマー
になりそうである。さらにまた、データ領域の宣言を余儀なくされるプログラミング言語への移行もハードルが高くなりそうだ。
「どれか一つを習得すれば他の言語への応用は効く」
という命題が成り立たなくなる。
ならばその対局にあるC言語がいいのか。いや、そんなことをしたら軒並みポインタに撃退されるのだろうか。
いっそ、アセンブラなんてどうだろうねぇ。
メモリアクセスは間接参照オンリーだからいやでもアドレッシングの理解は進みそうな気がするが。
私など学生時代に
アセンブラで書いて
ハンドアセンブルして
マイコンボードにマシン語を入力して
というようなことをやらされた………もとい! させて頂いた。今思えばいい勉強になったことは確かなんだが………「私はこれでプログラミングをやめました」という人が続出しそうでもある。実際、私も嫌いだった。ハンドアセンブル、マシン語入力を間違える度に悲鳴をあげた。
適度にCPUに近づけて、適度に難しく、適度に習得感があって、プログラミングの基礎を学べる、そんな風なプログラミング言語というのはどれになるんだろうねぇ。
Fortran。
歴史あるプログラミング言語をやったぞという、プチドヤ顔はできるかもしれない。それとも、進化した Fortran には研きがかかっているだろうか。