SC 22 専門委員会 (プログラム言語,その環境及びシステムソフトウェアインタフェース)

第1 種専門委員会

SC 22専門委員会(プログラム言語,その環境及びシステムソフトウェアインタフェース/Programming languages, their environments, and system software interfaces)

<2023年度委員会活動報告>

委員長 石畑 清

1. スコープ

プログラム言語の規格策定がSC設立当初からのスコープである.現時点で作業の対象となっているのはFortran,COBOL,Ada,C,Prolog,C++であるが,過去にはPL/I,Pascal,APL,BASIC,Lispなども対象にしていた.最近は,SC 22の外で策定された言語規格をfast trackで規格にすることも増えてきた.ECMAScript,C#,Rubyなどである.SC 22の国内委員会では,これらの言語規格も作業対象にする.言語を横断する形の活動として,language vulnerabilityに関する規格をまとめる作業がWG 23で行われている.

1990年代にスコープの追加が数回にわたって行われた.現在では,プログラム言語以外に,言語間で共通する仕様や複数の言語の間のインタフェース,仕様定義技法なども守備範囲である.Linuxの規格化の作業がWG 24で行われている.

2. 参加国

Pメンバは27カ国であるが,積極的に作業に参加している国は少ない.総会に参加したり,規格案にコメントしたりする国は,日本のほかオーストリア,カナダ,中国,デンマーク,韓国,英国,米国などに限られる.最近は総会にオンラインで参加する国が増えているが,貢献は見られない.

幹事国は米国である.議長も米国のDavid Keatonである.

日本からは,WGのconvenorやproject editorを何度か出してきた.2023年までは,WG 4(COBOLを担当)のconvenorを高木渉(日立)が務めていた.

3. トピックス

多くの言語で言語仕様近代化の努力が続けられている.FortranやCOBOLのような古典的な言語も,オブジェクト指向や並列化の機能を取り入れるなどして,近代的な言語に進化してきた.2023年には,Fortran,COBOL,Adaの改訂規格が発行され,多くの結実を見た年だったと言える.

C++を担当するWG 21は,3年に一度のペースでの規格改訂を目指して,活発な活動を続けていて,最新の改訂作業が終わりに近づいている.次期規格に盛り込むべき言語仕様の案を次々にTSとして出版するのがこのWGの作業スタイルである.Cを担当するWG 14の動きも活発で,本体の改訂作業を続けている上に,provenance-aware memory modelやgeneralized function callなどの新仕様の検討も始めた.WG 23で進んでいる言語ごとのvulnerabilityに関する規格の改訂作業も完了間近である.

これらとは趣旨の違う新規格として,C#のsuiteがある.これは,Ecma Internationalで今後開発される改訂版規格をJTC 1での投票を経ることなくそのまま認めるというものである.ECMAScriptについて同様の規格がすでに成立していて,C#は2例めということになる.
 

4. 日本対応/方針

日本が主体となって言語の規格を開発した例は少ない.かつてのISLisp,最近のRubyなどは例外で,いずれも日本からの提案に基づいて規格化を完成させた.多くの言語が欧米主導で開発されていることから,日本のSC 22の活動の中心は,規格案の精密な点検にならざるを得ない.SC 22では,SC本体で技術的な内容を審議することはなく,言語ごとに設立したWGに作業を委ねている.したがって,WG活動に積極的に参加して,規格案を技術的にかつ詳細に検討し,規格の品質向上に貢献できるよう努めている.

JTC 1の外で開発されている規格に関しては,fast track投票が来てから対応するのでは手遅れだと考え,開発の途中段階から作業に関与できる体勢を整えている.Ecma Internationalで開発される言語の多くは,C#, CLI, スクリプト系言語SGが対応する.