Terrario
A refined, expressive parser combinator library.
Minimal yet powerful APIs
Terrarioはできる限り動作を予測しやすく、かつ動作が重複しているAPIが少なくなるように設計されています。 目的の処理を行うために必要なAPIは1つしか無いため、実装方法で迷うことがほとんどありません。 また、APIセットが少ないため学習コストを下げることができます。
Scannerless parsing
パーサーには直接入力文字列を入力します。パーサーの前段にスキャナー(トークナイザー)を作成する必要がないため、 実装の手間を削減できます。また、トークナイズを行わないことでより柔軟な構文解析が可能になっています。
Support branch control by state
state変数の値によってパーサーの処理を分岐させる機能がサポートされています。 より複雑な構文の解析が可能になります。
Zero dependency
Terrarioには依存するパッケージがありません。プロジェクトの依存関係をクリーンに保つことができます。