fortran について書きます。


Backus 記憶違い

Backus が 1950年代のコンピュータ事情を回顧していますが、手紙等を調べた結果、色々記憶違いがあって自分がそれまで公言していたことに誤りがあったと正直に述べています。

ワシントン (子どもの伝記全集 8)

ワシントン (子どもの伝記全集 8)

Fortran wiki ページ NECFujitsu 抜け

NECFujitsu が表から抜けているようなので、けしからんです。


9.1 の bugfix の模様です。

9.1 と文書は変わらないようです。

Asynchronous I/O is now fully supported. The program needs to be linked against the pthreads library to use it, otherwise the I/O is done synchronously. For systems which do not support POSIX condition variables, such as AIX, all I/O is still done synchronously.

The BACK argument for MINLOC and MAXLOC has been implemented.

The FINDLOC intrinsic function has been implemented.

The IS_CONTIGUOUS intrinsic function has been implemented.

Direct access to the real and imaginary parts of a complex variable via c%re and c%im has been implemented.

Type parameter inquiry via str%len and a%kind has been implemented.

C descriptors and the ISO_Fortran_binding.h source file have been implemented.

The MAX and MIN intrinsics are no longer guaranteed to return any particular value in case one of the arguments is a NaN. Note that this conforms to the Fortran standard and to what other Fortran compilers do. If there is a need to handle that case in some specific way, one needs to explicitly check for NaN's before calling MAX or MIN, e.g. by using the IEEE_IS_NAN function from the intrinsic module IEEE_ARITHMETIC.

A new command-line option -fdec-include, set also by the -fdec option, has been added to increase compatibility with legacy code. With this option, an INCLUDE directive is also parsed as a statement, which allows the directive to be spread across multiple source lines with line continuations.

A new BUILTIN directive, has been added. The purpose of the directive is to provide an API between the GCC compiler and the GNU C Library which would define vector implementations of math routines.

よくよく見ると、ISO_Fortran_binding.h が利用できるようになっているようです。

Modern Fortran Explained: Incorporating Fortran 2018 (Numerical Mathematics and Scientific Computation)

Modern Fortran Explained: Incorporating Fortran 2018 (Numerical Mathematics and Scientific Computation)

Fortran は省エネ!

Energy consumed Run-time
Imperative 125J 5585ms
Object-Oriented 879J 32965ms
Functional 1367J 42740ms
Scripting 2320J 88322 ms

ベンチマーク競争サイトのプログラムは、ムキ勢が高度抽象記法やランタイム安全チェック機能を捨てて、インライン=アセンブラやら使うのであまりあてにならない気がw もっと素直にその言語が宣伝している機能で書かれている方がよろしいかと。