生物生産科学科 担当 國分 尚(5月28日、6月4日、6月11日)
プログラミング言語は大きく分けてコンパイラ言語とインタープリタ言語に分類される。コンパイラはソースコード(人間が書くプログラムのこと)から機械語に翻訳した実行ファイルをあらかじめ作るため(これをコンパイルと言う)、プログラムの修正の度にコンパイルの時間がかかる(大規模なプログラムの時は数時間に及ぶ)が、出来上がったプログラムの実行は速い。インタープリタは実行するときにソースコードを1行ずつ解釈していくためプログラムの修正後直ちに実行できるが、プログラムの実行速度は遅い。
本講義で扱うRubyはインタープリタに分類されるが、実際には一旦ソースコードから内部コードに変換しているので純粋なインタープリタではない。また、BASICのように一つの言語でコンパイラとインタープリタの両方が存在しているものもある。
インタープリタの中でも特にスクリプト言語と呼ばれるものがある。スクリプトとは比較的短くて簡単に書ける割に複雑なことができるプログラムの総称で、Rubyはこのスクリプト言語の一種である。
世の中でよく使われる(ていた)プログラミング言語にはBASIC、C、C++、COBOL、FORTRAN、Java、Lisp、Pascal、Perl、Smalltalkなどがある。(書店のコンピュータ関係の本のコーナーに行けば並べられている本の数によってそのとき最もトレンディな言語がわかる。今ならC++とJava、Visual BASICが筆頭か。)その他にも一般にはあまり使われないが熱狂的なファンを持つ言語や、自分でプログラミング言語そのものを作ってしまう人などもあり、プログラミング言語の数は数百はあるだろう。(この世にはプログラミング言語おたくという人たちも存在する。)
同じアルゴリズムをプログラムにするのにそれぞれの言語で違った書き方をするのは厄介だが、それは慣れれば何とかなる。むしろ、与えられた問題に対して適切なアルゴリズムを考えつくかどうかがプログラミングで最も大切なことである。また、よく使われるアルゴリズムを習って自分のものにしていく勉強も大切である。
2004年5月14日作成、2004年6月10日更新
國分 尚