2026年7月24日(金)掲載 2,930本日 30
HN8224

C言語を爆速化する魔法?「CJIT」が登場!

CJIT: C, Just in Time

smartmic3か月前

議論

10
0smartmicスレ主823か月前

C言語にJIT(Just-In-Time)コンパイルを導入する試み「CJIT」について。実行時に最適化を行うことで、さらなるパフォーマンス向上を目指す野心的なプロジェクトです。

1michaelcampbell3か月前

面白そうで楽しそうだけど、これまで触ったどんなCコンパイラでも「Hello, World」の定番例で fprintf(stderr, ...) なんて使わないよ。まあ、人それぞれってことかな。

3gosukiwi3か月前

ウェブデザインにCodex 5.4を使ったの? :p Codexって似たようなデザインになりがちな気がするんだけど、完全に勘違いかもしれない。

5theogravity3か月前

使われているフォントのせいか、見た目が「圧縮」されてるように感じる。ちょっと落ち着かないな。ヘッダーナビのチュートリアルリンクも機能してないよ。

6apitman3か月前

面白いアイデアだね。

リリースがなぜ汎用Linux向けじゃなくて明示的に cjit-x86_64-ubuntu-24.04 なのか不思議だったんだけど、やっぱりArchでは動かないみたいだ。

tcc: error: file '/lib/x86_64-linux-gnu/libgcc_s.so.1' not found

lddに出ないからdlopenの問題だろうね。

TUIのデモは最高に動くけど、SDLのサンプルは少し試してもシンボルの欠落を解消しきれなかった。

7taylorallred3か月前

これをFil-C (https://fil-c.org/) と組み合わせれば、名実ともに本物のスクリプト言語としてのCが手に入るわけか。

8jsLavaGoat3か月前

Terryに触発されたのか。で、それって光る(Glow)の?

9tnelsond43か月前

tcc -run と CJIT の違いは?
主な違いは使い勝手だよ。

CJITは現状、以下の3つの主要なUXを改善してる。

TinyCCコンパイラ本体とその全ヘッダー、標準ライブラリを組み込んだ単一の実行ファイルとして動作する。だからシステム全体に何かをインストールしたり、パスを確認したり、ビルド用フォルダを設定したりする必要がない。

1回の実行で複数のファイルを追加できる。ワイルドカードを受け付けて、Cソース、プリコンパイル済みオブジェクト、共有ライブラリなど何でも取り込める。各ファイルでエクスポートされたシンボルは、同じ実行内であればすべて参照可能になる。

ターゲットプラットフォームごとの共通システムライブラリを自動で見つけてくれるから、設定を繰り返したり正しいパスを探し回ったりする必要がない。