JavaScriptランタイムのBunが、C言語のコンパイルとJavaScriptプログラムからの実行をサポート

今回は「JavaScriptランタイムのBunが、C言語のコンパイルとJavaScriptプログラムからの実行をサポート」についてご紹介します。

関連ワード (上記、互換性、言語等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


JavaScriptランタイムのBunは、C言語のコンパイルとJavaScriptプログラムからの実行をサポートすると発表しました。

In Bun v1.1.28, we added support for compiling and running C from JavaScripthttps://t.co/eoClllphwj pic.twitter.com/YwCW7Uc7CT

— Bun (@bunjavascript) September 18, 2024

JavaScriptを用いてアプリケーション開発を行う際に、システムの持つ機能を呼び出したい場合にはNode.jsもしくはBunに実装されたN-APIもしくはJavaScriptエンジンV8のAPIをC言語経由で呼び出すか、もしくはWebAssemblyを用いるか、いずれかを用いるのが一般的でした。

今回、JavaScriptランタイムのBunそのものがC言語のコンパイルと実行の機能を備えたことで、C言語のAPIを呼び出す3つ目の方法を提供することになります。

これはN-APIの呼び出しには実装の関係で呼び出しのオーバーヘッドがあり実行速度が遅いこと、V8のAPIはバージョンアップにより使えなくなってしまうことがあること、そもそもC言語をコンパイルしてバイナリを生成するのが手間であること、WebAssemblyはサンドボックスによって分離されているため柔軟性が低い、などの従来の課題を解決する手段として提供されるものです。

Bunが提供する機能は、共有メモリを用いてJavaScriptからC言語をコンパイルして実行することで、ほぼ呼び出しのオーバーヘッドなく呼び出せると説明されています。

下記はサンプルとなるC言語のコード。乱数を返します。

上記のCのコードをコンパイルして呼び出すためのJavaScriptのコード。

実行したところ。

JavaScriptランタイムはNode.js、Deno、Bunなどのソフトウェアだけでなく、CloudflareやAWSなどサービスベンダも入り交じって競争が続いています。その中で各プロダクトともに事実上の標準であるNode.jsとの互換性を守りつつもそれぞれの特徴を出そうとしているところで、今回のBunのC言語サポートもそうした特徴をだそうとする努力の1つのように見えます。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
Microsoftの法務顧問が見せた規制へのリスペクト–プライバシーやコロナ禍を語る
IT関連
2021-07-09 08:44
NEC、チェコ気象庁からベクトル型スーパーコンピューター受注–気象災害の軽減へ
IT関連
2021-02-16 17:04
日立ら4社、デジタルな仕組みを用いた環境債の発行で協業
IT関連
2022-04-20 21:03
バイデン氏、サイバーセキュリティ強化を目指す大統領令に署名
IT関連
2021-05-14 11:10
ペンシルバニア大准教授、授業で「ChatGPT」利用を奨励–「目覚ましい」成果
IT関連
2023-02-23 09:50
拡張現実をさらに拡張する「AAR」 頭上のプロジェクターからARで見えているものを投影 :Innovative Tech
イラスト・デザイン
2021-03-13 14:03
「接続のしやすさ」よりも「強力な保護」を優先–マカフィーの消費者調査
IT関連
2022-02-08 18:18
New Relicなど、可観測なセキュリティ実装に向けてアライアンス設立
IT関連
2024-05-09 11:32
データは秘密のままで医療AIの改善を目指す「MedPerf」
IT関連
2023-08-02 18:30
JAMスタックのNetlify、Denoを採用したサーバレス環境「Netlify Edge Functions」ベータ公開。Deno Deployの分散エッジでNext.js/Nuxt/SvelteKit/Remixなど実行
Deno
2022-04-21 03:09
高い、使いにくい、読みにくい──音声合成研究者を悩ませるハードルを解決する“台本”、明治大学らが発表
くわしく
2021-06-20 00:16
CelonisとNEC、業務DXを中心とした戦略的提携を締結
IT関連
2023-08-31 21:26
日経平均銘柄企業でなりすましメール対策の導入増加–ドメイン対応に課題
IT関連
2022-05-21 13:35
Microsoft 365、来年3月1日に値上げ
アプリ・Web
2021-08-21 06:16