fortran66のブログ

fortran について書きます。

【メモ帳】Fortran 色々

Fortran 入門動画

米科学用スパコンセンター NERSC の入門講座。

涼しくなったら見る。


www.youtube.com

www.youtube.com

www.youtube.com

www.youtube.com

Fortran ゲーム制作 その1

Raylib によりリズムゲーを作っておられます。

github.com


www.youtube.com

Fortran ゲーム制作 その2

Raylib によりマルバツゲームを作っておられます。

なぜ浮動小数点数が実数型なのはどうして?

FORTRANPASCAL浮動小数点数を REAL 型とするのは何故かと問われておりますが、当時のマニュアルを見ると FORTRAN I, II までは floating point と fixed point の二つが暗黙の型としてあり、fixed point は小数点をちょうど整数になる位置に止めているので整数型になっています。FORTRAN IV になるときに、多分 COMPLEX 型が導入される関係で、floating point が REAL 型となったと思われます。 fixed point は INTEGER 型になりました。

FORTRAN が開発された IBM704 はハードウェア浮動小数点演算装置を初めから備えていたので、ハードウェアの関係からも floating point と fixed point を区別する必要があったと思われます。それ以前の IBM の計算機は別売りオプションの浮動小数点演算装置はあったけれど、初めから備えていたのは IBM704 が最初です。

なお複素数演算は FORTRAN II の後期バージョンで言語拡張として導入されましたが、コンパイラ指示文字を加えることで、変数を複素数扱いするもので、言語そのものに複素数が導入されたものではありません。

また FORTRAN II までは、Backus の率いる Programming Research Group が開発していましたが、FORTRAN IV は Heising の Applied Programming Department が開発を引き継いでいることも関係しているかもしれません。 Heising の回顧によれば引き継ぎはあまりスムースではなかった模様です。

fortran66.hatenablog.com

FORTRAN に遅るること約 70 年で C++23 に多次元配列

なお、オプションで列優先にもなる模様。そういえば Module も C++20 くらいで入れてましたね。Class は密結合すぎて、Module のようなより疎な抽象データ構造 (abstract data type) の実現が適切な方が多いと思われます。

コンピュータの世界では、添字なしの変数をスカラー、一次元配列をベクトル、二次元配列をマトリクス、そして三次元以上の配列をテンソルと呼ぶと聞いたが本当なのでせうか?

コンピュータ・ワールドは、座標系は左手系で、ベクトルは横ベクトルで、演算子は右から左にかかる(オブジェクト指向で)珍妙な世界w

1980 年代の OpenGL とか自然科学の応用から出たようなものは右手系だが、1990 年代以降のテレビゲーム用のものはテレビ画面の縦横が y, x 軸で奥に向かう方向が Z 方向のためか左手系になっていて草。


www.youtube.com