K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>下記のようなプログラムで、ただのブロックを書いた場合、diksamで構文エラー >>になります。4.01でも。これをエラーにしないように、diksam.yを修正したいの >>ですが、お暇がありましたら何かアドバイスをお願いいたします。 > >そういえば、Diksamはぶら下がりifの類を許していないので、複合文も >作っていませんでした。 > >Cと同じように文の一種としてcompound_statementを導入すればよいのでは、 >とちょっと試してみたのですが、yaccでconflictが出ました。 > >考えてみればDiksamでは配列リテラルがあるので、「{」の後に式が来たとき >ブロックなのか配列リテラルの始まりなのかがわからないわけです。 >こういう場合、構文規則を変形してreduceのタイミングを遅らせる手法が >使えることがありますが、現状のDiksamのブロックは、「{」の直後で >埋め込みアクションが動くようになっており、そのためにはreduceが必要です。 > >すみません、ちょっと一筋縄ではいかないようです。 >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!