タグ

2012年4月13日のブックマーク (3件)

  • senstic.com

    senstic.com 2024 著作権. 不許複製 プライバシーポリシー

  • Qiita株式会社 -

    Qiita株式会社は、社会を支えるソフトウェアの開発や、それを支える エンジニアの開発効率の向上に貢献することを通して、社会の変化、 世界の進化を加速させていきたいと考えています。

    Qiita株式会社 -
  • 第9章 速習yacc

    概要 パーサとスキャナ プログラム言語のパーサの書きかたは昔からしつこく研究されてきており、 かなりしっかりした定石がある。よほど変な(または曖昧な)文法でない 限り、定石にのっていけば解決できるものだ。 まず最底辺には文字列を単語(トークンとも言う)の列に切り出す部 分がある。これをスキャナ(scanner)とかレクサ(lexer)と言 う。日語で言うと字句解析器だが、言いにくいのでスキャナと呼ぼう。 スキャナというものが出てくる根底にはそもそも「単語の区切りには空白ある でしょ」という常識がある。そして実際にたいていのプログラミング 言語はそういう仕様になっている。そのほうが楽だからだ。 例えば古いFortranでは空白が意味を持たなかった。つまり空白を入れても 単語区切りとは限らないし、変数の途中で何の前触れもなく空白を挿入したり することもできた。ところが解析が恐ろしく面倒なもの