Cosmopolitan libc - Build-Once Run-Anywhere C
(justine.lol)- Cコードをどこでも実行可能にしてくれるライブラリ
→ Javaに似ているが、インタープリタやVMは不要
→ Go/Rust級の移植性を提供しつつ、C言語をそのまま使える
→ 提供される5つのライブラリファイルでコンパイルするだけで、そのままMac/Windows/Linuxをサポート
-
glibc並みの速度
-
ape(αcτµαlly pδrταblε εxεcµταblε) というフォーマットを作って使用
→ Windows Portable Executable を UNIX第6版のシェルスクリプトにできるという事実を利用
→ ポータブルでありながら、Go版のHello Worldより100倍小さい
- 内部にBIOSブートローダーを内蔵しており、ベアメタルでブートして実行することも可能
5件のコメント
どう使えるのか想像がつきません。面白いですね。
著者の Justine Tunney は有名なハッカーです。
https://en.wikipedia.org/wiki/Justine_Tunney
ベアメタルでの実行方法は、著者が HN にコメントで書いてくれていますね。
https://news.ycombinator.com/item?id=25558363
何か C でコマンドラインツールを作る新しい方法になりそうですね。
GitHub を見ていたのですが、中にある各 OS を表した ASCII アートが印象的です。
https://github.com/jart/cosmopolitan/blob/master/ape/ape.S
コードのコメントが……アートですね……アート……
(笑) かっこいいですね。最初はロゴがそういうものなのかなと思っていましたが、MS-DOSから感銘を受けました。
コメントにああいうものがあると、なんだか本当に楽しんで開発している感じがしますね(笑)