Show HN: Moss、AI主導のプログラミング言語実験
Mossは、人間とAIエージェントが長期にわたって協力するソフトウェアプロジェクトのための実験的なプログラミング言語です。CodexとFujo930によって作成され、現在バージョン0.2.0で自己ホスティングスケッチを備えています。
Mossは、AI(Codex)と人間の開発者Fujo930の協力によって設計・実装された実験的なプログラミング言語です。このプロジェクトは、人間とAIエージェントが長期にわたって同じコードベースで協力できるようにすることを目的としています。Mossの開発プロセス全体(設計、実装、デバッグ、ドキュメント作成、コミット、プッシュ)はCodexが主導し、Fujo930が協力しました。現在、Mossはバージョン0.2.0のプレビュー版をリリースしており、実行可能なプロトタイプですが、完全な自己ホスティングはまだ実現していません。
Mossの主要な機能には、エフェクト宣言(effect declarations)、レコードと単純な共用体のための型宣言(type declarations)、純粋な式関数としてのルール宣言(rule declarations)、オプションでEffectNameを使用する関数宣言(fn declarations)が含まれます。さらに、テストブロック、レコード操作、if-else条件、リストとマップ操作、テキスト処理、ファイルシステムエフェクトなどをサポートしています。また、ワイルドカードとペイロードバインディングパターンを持つマッチ式(match expressions)、Result値(Ok(...)、Err(...)、?)、関数引数と戻り値のためのランタイム型契約も提供しています。
Mossのコマンドラインツールは、コードチェック(moss check)、実行(moss run)、テスト(moss test)、トークン表示(moss tokens)、抽象構文木表示(moss ast)などの操作を提供します。特に、moss selfhostコマンドは自己ホスティングスケッチを実行し、Mossコードが自身を解析・チェックする様子を示します。さらに、moss studioコマンドはローカルHTTPエディタを起動し、ユーザーはブラウザからhttp://127.0.0.1:8765でMossコードを編集・実行できます。
プロジェクトのステータスとして、Mossは現在バージョン0.2.0であり、実際の構文、ランタイムセマンティクス、ブラウザエディタ、Mossで書かれた自己ホスティングスケッチを備えたコンパクトなインタプリタです。リポジトリはMITライセンスで公開されています。Mossはまだアルファソフトウェアであり、完全に自己ホストされているとは言えません。今後の計画には、構造化されたMoss ASTの構築、診断情報の強化、フォーマッタの追加、Mossで書かれたフロントエンド出力とPythonホストフロントエンドの比較が含まれます。
GitHubの言語バーはLinguistによって駆動されています。.mossファイルは.gitattributesで検出可能としてマークされていますが、GitHubがMossを第一級言語として表示するには、Mossが上流のLinguist言語リストに受け入れられる必要があります。詳細はdocs/language.md、docs/studio.md、docs/history.md、docs/roadmap.mdを参照してください。