私はfsyaccにフィードできるC#v4のBNF文法を探していますが、F#を出力できるEBNFベースのパーサージェネレータが見つからない場合は探しています。BNFのC#文法F#
EDIT: 私はC#のためのパーサが、非常に似た文法のための実験的なパーサを書くために見ていると私はそれが簡単にC#の文法で開始することを見つける2つの文法の間に大きなリテラルの重複がありますので、いませんよ単に逸脱するビットを変更するだけです。しかし、私が見つけたのC#v4のための唯一の文法はEBNF
ある代替答えはWikipediaによるEBNFからBNF
私はあなたが固い何かを見つけるとは思わない。私が考えることができる最良の選択肢は、MonoでC#コンパイラのパーサーを使用することです。あなたはそれをコンパイルし、F#からそれを使用することができるはずです(またはF#フレンドリーになるように変更する)。 –
@Tomas:それを指摘してくれてありがとう。私が持っているEBNF文法を書き直し、fsyaccを使ってみよう。私は文法を変えることができる必要があります。私はC#コンパイラを書くのではなく、非常によく似た文法の実験的なコンパイラです。 –
@TomasPetricekあなたが答えとしてそれを書くなら、私は答えにあなたに報いるでしょう。私はモノラルC#コンパイラを代わりに拡張しました。私が思ったよりもはるかに少ない仕事でした –