こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

プログラミングの字句解析についてです。

プログラミングの字句解析についてです。

プログラミングにおいて「字句解析」がわかるとどんないいことがあるのでしょうか?
また、お勧めの参考書やサイト、勉強法などを教えていただきたいです。

よろしくお願いします。

投稿日時 - 2010-06-05 08:59:29

QNo.5945881

暇なときに回答ください

質問者が選んだベストアンサー

こんにちは。大学で構文解析をちょっとがじったことのあるエンジニアです。
字句解析だけだといいことはそんなにないと思います(笑

もうすこし広範囲の、構文解析だといいことあったりします。
ソースコードって結局テキストデータなので扱いにくいですが、
構文解析して木構造のデータにしちゃうと、いろいろできます。
ソースコードの解析ができるということなので、
ソースコードの自動生成ができたり、コードの品質を測ったりできますよね。

おすすめの書籍は、「ふつうのコンパイラをつくろう」です。
字句解析、構文解析、意味解析のあたりがとても分かりやすく書いてあります。
ニッチな分野なので、あんまり本はたくさんないのが現状でしょう。
もっと詳しく知りたい場合は、論文でも探してみてはいかがですか。
海外も含めたらなんかあるかも。

参考URL:http://amzn.to/aSYqXs

投稿日時 - 2010-06-05 09:26:01

このQ&Aは役に立ちましたか?

10人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

以前に自己流(excel VBA)で簡単な構文解析プログラムを作って、ソースコードから変数等を抜き出してソースの解析に使うプログラムを作りました。

解析ができればコンパイラを作る事も可能ですし、読み込んだ文字列を利用して色々な制御も行えます。

投稿日時 - 2010-06-05 13:42:57

ANo.2

字句解析がわかるとテキストファイルの解析ができます。テキストファイルの解析ができるというのは、自分で任意のテキストファイルフォーマットをつくれるということです。例えば、CSV形式や簡単な設定ファイルなんかは字句解析ができるとすぐに解析出来ますし、自分で同じようなものを作ることもできます。
入れ子構造のフォーマットを作るにはこれに加えて構文解析もできないといけませんが、その場合でも字句解析が出来ていることが基本になります。

いまどきほとんどの言語に字句解析、構文解析のためのライブラリくらいあると思いますので自分で手書きする必要はないと思いますが、良いプログラマは自分が使うライブラリがどのように作られているかは把握しているものです。

字句解析、構文解析を学ぶ参考書には次のようなコンパイラの教科書がよいでしょう。
「コンパイラの構成と最適化」
「プログラミング言語処理系」

投稿日時 - 2010-06-05 09:28:28

あなたにオススメの質問