K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]


新規投稿 | 開設者ホームページへ戻る | ヘルプ


[2122] Re:プログラミング言語を作る2章質問
返信


投稿者:(ぱ)こと管理人
2018/04/15 23:14:00

Link:
>はじめまして。

はじめまして。読んでいただきありがとうございます。

>1点目:P.56で、エラーリカバリの実現として、mycalc.yファイルの書き換えとして
>lineのルールにerror CRの並びを追加しています。この通りにしてみたもののmycalcの
>動きに変わりはありませんでした。で質問ですが、この修正で意図したエラーリカバリ
>とは、本文直前の文の記述がある、「一度のコンパイルでできるだけ多くのエラーを
>見つけることではないこと」を指しているのでしょうか?つまり何らかの作用により
>yaccが出すメッセージを見やすくする対応のものでしょうか?

この修正は、その直前の記述である「ただ、電卓の場合、対話的に使うものですから、
入力ミスで即座に死んでしまうのはユーザにとって不親切でしょう」という
問題に対する対応です。

>それとも、mycalc.lにもともと実装されている、エラー出力lexical error後の
>exitを消しても、yyclearin;,yyerrok;の作用でError!Error!Error!の
>エラー表示に陥らなくなることを指して、エラーリカバリと呼んでいるのでしょうか?

よって、エラー時にexit()しなくなる、というのが目的です。

>2点目:P.74で、括弧対応の話で、私の環境ではmycalc.yの11行目、
>トークンの並びにLP,RPを追加しなくては動きませんでした。
>こちら11行目に追加することが、筆者の意図とした変更なのかよくわかっていません。

すみません、こちらはこれが私の意図した変更ですが、
p.74で「たったこれだけのことで〜」と書いておきながら他の修正が要るというのは
問題ですね。正誤表に加えておきました。
ご指摘いただき、ありがとうございました。
[ この投稿を含むスレッドを表示] [ この投稿を削除]



[ より新しい投稿] [ より古い投稿]