コードより先に伝わるYOYUの思想
表示
YOYUは、構文解析のための実装インフラであると同時に、「記述する自由」そのものを探究するプロジェクトだ。
最低限の構造で最大限の柔軟性を。
既存のツールに従うのではなく、自分の問題に合わせて構文を記述する。
そのために、Cons、UTF-8デコーダ、固定長ヒープ、自作ハッシュテーブルといった道具を一つずつ手作りしてきた。
それらはLispの模倣ではない。自分で扱える、自分のための土台である。
YOYUにとって重要なのは、
「どんな言語も自分で定義し、自分で読める」こと。
「lexやyaccに縛られず、自分のルールでスキャンし、構文を組み立てられる」こと。
だからこそ、正規表現に頼らず、ASCIIの1バイトだけで判断可能なクラス分けを考える。
トークナイザでさえ、命令的に、明確に、ハックの余地を残したまま記述したい。
必要ならアセンブラのような構造化記述言語を作り、それを出力する「高級記述言語コンパイラ」を作ればいい。
理想があるからこそ、馬の骨のOSよりも、
そのOSの振る舞いを例示する「ドキュメントこそがYOYU」になる。
コードはあくまで思想の出力結果。
まず思想があり、次に設計があり、それがコードになる。
それこそが、YOYUの本質である。