- ISO/IEC 1539-1:2023 として正式標準をリリース。674ページのPDF
新機能と変更点
- 長さ制限の変更
- 自由形式ソースの行長制限を10,000文字に拡大。
- 255行の連続行制限を廃止し、文の長さ制限を100万文字に拡大。
- 文字変数の長さ
- 遅延長の割り当て可能変数が内部指定によって定義される場合、プロセッサによって適切な長さに割り当て。
- 条件式
- 条件式を追加(
value = (a > 0.0 ? a : 0.0) 形式)。
- 条件付き引数
- 条件付き引数を追加。引数はすべて同じランク、型、種別である必要がある。
- coarray コンポーネントを持つ配列
- coarray コンポーネントを持つ型のオブジェクトは配列または割り当て可能だが、coarray 自体ではない。
- Put with Notify
- SHMEM コミュニティで人気のある機能。例:
x[10 notify=nx] = y。
- Do Concurrent の reduction 指定子
do concurrent 構文内で reduction variable を使用可能。
- 単純手続き
- 純粋手続き(pure procedure)は引数を通じてのみ変数を変更し、単純手続き(simple procedure)は引数を通じてのみ変数を参照する。
- 列挙型
- 新しい列挙型をサポート(
enum bind(c) など)。
- 整数配列を使った添字指定
- 整数配列を使ったランクおよび境界の使用
- 仮定形状配列および明示形状配列でランクと下限を使用。
- System Clock の改善
- Fortran 2018 の system clock 引数を改善し、多様な整数 kind をサポート。
- Intrinsic Type の追加の名前付き定数
iso_fortran_env モジュールに新しい名前付き定数を追加。
- Intrinsic Procedure c_f_pointer の改善
c_f_pointer に下限を指定する追加の省略可能引数を追加。
- BOZ 定数の拡張された利用
- 2進、8進、16進(BOZ)定数を初期化、配列コンストラクタ、列挙コンストラクタなどで使用可能。
- 度単位で動作する三角関数
- 度単位で値を計算する三角関数(
sind(x), cosd(x), tand(x) など)。
- 半回転単位で動作する三角関数
- 半回転(180度)単位で値を計算する三角関数(
sinpi(x), cospi(x), tanpi(x) など)。
- 論理型の選択 kind
- 論理型の格納サイズを指定する
selected_logical_kind(bits) 関数。
- これ以上追加されない旧式機能および削除済み機能
- 新機能を旧式機能および削除済み機能の一覧に追加しない。
1件のコメント
新機能の要約は、John Reid が発表した「The new features of Fortran 2023」から引用しました。
このPDFを PDF GPT(GPT Plus の購読が必要) に渡すと、うまく要約してくれますね。
Fortran - 高性能並列プログラミング言語