コンテンツにスキップ

コードより先に伝わるYOYUの思想

提供: ウィキバーシティ


YOYUは、構文解析のための実装インフラであると同時に、「記述する自由」そのものを探究するプロジェクトだ。


最低限の構造で最大限の柔軟性を。 既存のツールに従うのではなく、自分の問題に合わせて構文を記述する。 そのために、Cons、UTF-8デコーダ、固定長ヒープ、自作ハッシュテーブルといった道具を一つずつ手作りしてきた。 それらはLispの模倣ではない。自分で扱える、自分のための土台である。


YOYUにとって重要なのは、 「どんな言語も自分で定義し、自分で読める」こと。 「lexやyaccに縛られず、自分のルールでスキャンし、構文を組み立てられる」こと。


だからこそ、正規表現に頼らず、ASCIIの1バイトだけで判断可能なクラス分けを考える。 トークナイザでさえ、命令的に、明確に、ハックの余地を残したまま記述したい。 必要ならアセンブラのような構造化記述言語を作り、それを出力する「高級記述言語コンパイラ」を作ればいい。


理想があるからこそ、馬の骨のOSよりも、 そのOSの振る舞いを例示する「ドキュメントこそがYOYU」になる。


コードはあくまで思想の出力結果。 まず思想があり、次に設計があり、それがコードになる。 それこそが、YOYUの本質である。