id Softwareの共同設立者でゲームエンジン開発者として知られるジョン・カーマック氏が、フランスのプログラマーであるファブリス・ベラール氏について「 ほぼ間違いなく、彼は私よりも総合的な実力のあるプログラマーだ」と称賛して注目を集めています。ベラール氏はFFmpegやQEMU、Tiny C Compiler、QuickJSなど今もなお広く使われる基盤ソフトウェアを個人または少人数で立ち上げてきたことで知られています。

John Carmack (@ID_AA_Carmack): "I admire Fabrice Bellard. He is almost certainly a better overall programmer than I am." | XCancel

https://xcancel.com/ID_AA_Carmack/status/2064095424420487226

January 6: Computer Scientist Fabrice Bellard Announces Computing Pi to Record Number of Digits | This Day in History | Computer History Museum

https://www.computerhistory.org/tdih/january/6/

ベラール氏は1972年にフランスのグルノーブルで生まれ、エコール・ポリテクニークで学んだコンピューター科学者です。若い頃から圧縮やコンパイラ、エミュレーション、映像処理、数値計算といった低レイヤーの領域で成果を残しており、17歳の時点で実行ファイル圧縮ツール「LZEXE」を作成していたことも知られています。

ベラール氏の最も有名な業績の1つが2000年に立ち上げたオープンソースのマルチメディア処理フレームワーク「FFmpeg」です。FFmpegは動画や音声のエンコード、デコード、変換、ストリーミングなどを扱う基盤ソフトウェアで、動画配信やメディア処理の現場で広く使われています。

ただし、ソーシャルニュースサイトのHacker Newsに投稿されたコメントによれば、ベラール氏はすでに20年以上FFmpegの開発に関わっておらず、現在のFFmpegは多くの開発者による長年の改良で成立していると指摘しています。



ベラール氏のもう1つの代表作が、2003年に始まったマシンエミュレーター兼仮想化ソフトウェア「QEMU」です。QEMUは異なるCPUアーキテクチャやOS環境をエミュレートするためのソフトウェアで、現在の仮想化技術や開発・検証環境において重要な役割を果たしていますが、ベラール氏はこのQEMUを初期バージョンである0.7.1までほぼ単独で開発していたとされます。

ベラール氏の仕事はこの2つにとどまらず、2001年にはC言語プログラムの難読さと複雑さを競うコンテスト「International Obfuscated C Code Contest」で、後にTiny C Compiler(TCC)の基となるCコンパイラで受賞。TCCはLinuxカーネルをソースから15秒未満でコンパイルして起動するデモでも知られています。

2011年にはJavaScriptだけでLinuxをブラウザ上で動かすPCエミュレーター「JSLinux」を公開し、2019年には小型ながら完全なJavaScriptエンジンを目指した「QuickJS」をリリースしました。近年もニューラルネットワークを使う可逆圧縮ツール「NNCP」、大規模言語モデルを使ったテキスト圧縮ツール、低ビットレート音声圧縮の「TSAC」、マイクロコントローラー向けJavaScriptエンジン「Micro QuickJS」などを発表しています。

わずか10KBのRAMで動く組み込みシステム向けにJavaScriptプログラムをコンパイルして実行できる「MicroQuickJS」 - GIGAZINE



ベラール氏は数値計算の分野でも大きな足跡を残しました。計算機史をまとめるComputer History Museumによると、ベラール氏は本来高価なスーパーコンピューターで行われる円周率計算を、デスクトップPCで実行して約2兆7000億桁を計算したと発表し、当時の世界記録を更新しています。

Pi Computation Record

https://bellard.org/pi/pi2700e9/



ベラール氏は2012年に通信ソフトウェア企業のAmarisoftを共同創業し、CTO(最高技術責任者)を務めています。Amarisoftは4G LTEや5G NRなどの基地局ソフトウェアを標準的なPC上で動かす製品を展開しており、ベラール氏の関心がメディア処理や仮想化から通信インフラへ広がっていることがうかがえます。

Hacker Newsでは「ベラール氏の業績は『仕様をC言語に落とし込んだ』ことです。FFmpegはコーデック仕様、QEMUは命令セット仕様、QuickJSはECMAScript仕様、Tiny C CompilerはC言語仕様、通信事業のAmarisoftはLTEや5Gの仕様を扱うためであり、確かに多くの業績が『仕様から実装への変換』とカテゴライズできます」と指摘されています。

ただし、その見方に対しては「仕様があるからといって実装が機械的に決まるわけではない」という反論もあり、「コーデックやエミュレーターを高速で正確に動作するように実装するにはアルゴリズム設計、最適化、例外処理、互換性への深い理解が必要であり、それこそまさにベラール氏の評価すべき業績である」とHacker Newsで指摘されています。