コトリンの創始者による新しい言語:英語の代わりにLLMと対話するための正式な方法
概要
CodeSpeakは、LLMを活用した次世代型プログラミング言語。
コードベースを5~10倍小型化し、保守性を向上。
手動コードと仕様書生成コードの混在プロジェクトに対応。
実際のオープンソースプロジェクトでの導入事例を紹介。
テスト通過率や縮小効果も具体的に提示。
CodeSpeakの特徴
- **LLM(大規模言語モデル)**を活用した新しいプログラミング言語
- Alpha Preview段階で、uvツールを用いたcodespeak-cliのインストールが可能
- 本番環境や長期プロジェクトにも対応
- 複雑なソフトウェア開発に従事するエンジニア向け
- プロトタイプ開発だけでなく、実運用を前提とした設計
- チーム開発を重視し、コミュニケーションの重要性を強調
- ソロ開発者だけでなく、複数人のチームでの利用を想定
混在プロジェクトでの運用
- 手動で記述したコードと仕様書から自動生成したコードの共存が可能
- MarkItDownリポジトリ(forked)での具体例を紹介
- 混在プロジェクトのステップバイステップガイドも提供
コードから仕様書への変換(今後実装予定)
- 既存コードの一部をCodeSpeak仕様書に置き換え可能
- 仕様書は5~10倍小型化され、保守性向上に寄与
- 人間による仕様書の維持管理がより容易に
実際の導入事例
-
オープンソースプロジェクトの実コードを元に仕様書を生成し、効果を検証
-
WebVTT字幕対応(yt-dlp用)
- コード: 255行 → 仕様書: 38行(6.7倍縮小)
- テスト: 1278/1279通過(37件追加)
-
Faker用イタリアSSNジェネレータ
- コード: 165行 → 仕様書: 21行(7.9倍縮小)
- テスト: 2229/2229通過(13件追加)
- (イタリア市町村コードリスト約8000行は除外)
-
BeautifulSoup4のエンコーディング自動検出・正規化
- コード: 826行 → 仕様書: 141行(5.9倍縮小)
- テスト: 914/914通過(25件追加)
-
EML→Markdown変換(markitdown用)
- コード: 139行 → 仕様書: 14行(9.9倍縮小)
- テスト: 192/192通過(27件追加)
-
LOC(行数)は空行を除外し、長い行は分割してカウント
-
CodeSpeakの今後
- コードから仕様書への自動変換機能のリリース予定
- 保守性・拡張性の高いソフトウェア開発を目指す開発チーム向け
- 仕様書中心の開発による効率化と品質向上
CodeSpeakは、人間本位のソフトウェア開発を実現するために設計された、次世代プログラミング言語。
複雑なチーム開発や長期的な保守を視野に入れたプロジェクトで、コードの小型化と可読性向上を実現。