Show HN: 多機能なバイナリコンパイル言語
Xiはバイナリにコンパイル可能なフル機能のプログラミング言語です。セルフホスティングコンパイラ、C99バックエンド、ビルトインの依存性注入/IoC、型付きビジネスルール機能(デシジョンテーブル等)を備え、ネイティブバイナリとWASMの両方を生成可能です。実際にeXstreamというアプリケーションがこの言語で構築されています。
背景メモ
- 「Xi (ギリシャ文字のΞ/ξ)」は、"自己ホスティング"(自身のソースコードで自分自身をコンパイルできる)が可能な新興プログラミング言語。GitHub上で「Show HN」として公開された。
- C99をバックエンドに使うため、生成されるコードはほぼどんな環境でもコンパイルでき、ネイティブバイナリとWASM(WebAssembly)の両方を出力できる。
- 依存性注入(DI)や業務ルール表現用の決定表(decision tables)を言語レベルで組み込んでいる点が特徴的。DIフレームワークに頼らず言語自体が持つ設計。
- eXstreamという実アプリが既にこの言語で書かれており、単なるおもちゃではないと主張。
- 背景:RustやGoなど近年のシステムプログラミング言語は増えているが、DIや決定表のような高レベルの抽象機構を標準で持つものは少ない。Xiは「業務アプリ開発に特化したシステム言語」というニッチを狙っている可能性がある。