FORTRAN77
[授業のページ]
[数値計算]
[UNIXのページ]
[ホームページに戻る]
FORTRAN77ってどうなの?
- FORTRAN77は、多くの欠点をもつ言語であり、
また はっきり言って時代遅れであるから、教えるべきではない。
読みやすくてバグの生じにくいプログラムが良いプログラムなのだが、
FORTRAN77には、良いプログラムを書くために必要な
いくつかの機能が決定的に欠けている。
また、参考になる書籍もCなどに比べると極端に少ない。
- ただし、科学技術計算用のFORTRANプログラム資産が
山のようにあることを考えれば、
FORTRAN77を読む能力は必要かもしれない。
しかし、FORTRAN77を書くことを教えるくらいなら、
むしろ 昔のプログラムを
CやFortran90できれいに書き直すことを
教えるべきである。
- 研究室で高価な商用コンパイラを購入している場合、
それは ほぼ確実にFortran90に対応しているので、
ぜひ時代遅れのFORTRAN77を捨てて
Fortran90(および「良いプログラムの書き方」)を学ぶべきである。
せっかくのFortran90を使わないのは、資金をムダにしているに等しい。
他方「非商用のFORTRANコンパイラしか使えないので
Fortran90への移行ができない」という話をよく聞く。
この場合でも、たとえば GNU Fortran Compiler (g77)では
いくつかのFortran90由来の拡張機能が利用できるので、
せめてこれらの機能を利用して
FORTRAN77の欠点を補うようにすべきである。
それでもFORTRAN77を利用したい人のために
以下の参考文献を紹介しておく。
- 浦 昭二: FORTRAN77入門 (改訂版).
電子計算機のプログラミング, No. 8. 培風館, (1990)
- 川崎辰夫ほか:
FORTRAN77プログラミング: 入門からグラフィックスまで.
培風館, (1992)
- 秋元博路:
Fortranプログラミング初級編.
有名な Numerical Recipes の FORTRAN版は、
日本語には訳されておらず、英語で読むしかない。
ちなみに、C言語版は、英語と日本語訳の両方がある (それにしても
この本のCプログラムは、じつにFORTRAN的な語法で書かれている)。
GNUの Fortranコンパイラ(g77)は、
基本的にはFORTRAN77をベースにしているが、
実際には さまざまな拡張機能を取り込んでいる。
これらの拡張機能のなかには「Fortran90でも通用し、かつ
良いプログラムを書くのに役立つような機能」がたくさんある。
そういう有用な拡張機能を
積極的に利用すべきである。
くわしいことは g77.info を読めば分かるはずだが、
今のところ、残念ながら英語版しか用意されていない:
これだけではあんまりなので、g77.info の内容を自分なりに要約したメモを作ってみた。
ただし、メモの内容が正しいかどうかは一切保証できない。
そのつもりで利用してほしい。
[授業のページ]
[数値計算]
[UNIXのページ]
[ホームページに戻る]