タグ

ブックマーク / amari3.hatenablog.com (1)

  • Parse::RecDescent 使ってみた - amari3の日記

    最近、字句解析やら構文解析に興味があるので、perl の強力なパーサ Parse::RecDescent を使ってみた。まずは簡単に足し算の文法を考えてみる。 バッカス・ナウア記法を使って書いていますが、勉強を始めたばかりなので誤りがあるかもしれません。 expression ::= atom + expression | atom atom ::= [0-9]+ expression の定義 atom + expression もしくは atom atom の定義 0〜9の1回以上の繰り返し これを、Parse::RecDescent を使って実装したのが、以下のソースコードとなる。 #!/usr/bin/env perl use strict; use warnings; use feature qw/say/; use Parse::RecDescent; my $grammar =

    Parse::RecDescent 使ってみた - amari3の日記
  • 1