タグ

構文解析に関するohnishiakiraのブックマーク (5)

  • JavaScript で構文解析: Days on the Moon

    C++ の特徴のひとつである演算子オーバーロード、その粋を極めたのが Boost Lambda (無名関数) と Boost Spirit (構文解析) ではないかと思っています。JavaScript では無名関数が使えるので Lambda に関しては間に合っているとも言えますが、Spirit はそうも行きません。JavaScript 2 で演算子オーバーロードがサポートされるのならチャレンジしてみようかななどと思ってそれきりになっていました。 しかし、一部でパーサブームが起こっているというのを受け、Perl 6 Rules をつらつらと眺めているうち、正規表現のメタ文字を使えば文法定義をきれいに書けるのではと思い至りました。そこで実際に JavaScript でパーサジェネレータを作り、Spirit にあやかって Gin (ジン) と名づけてみました。 文法定義 正規表現リテラルを使うこ

  • 講義資料 - PukiWiki

    テストデータ, reference情報など † 10/29 mini-Python文法 grammar.txt 10/29 字句解析器テストデータ tokenizer.tar.gz 11/5 構文木ヘッダsyntree.h.txt 11/5 構文木Cソースの一部syntree.c.txt 11/5 構文解析木ヘッダparser.h.txt 11/5 構文解析木Cソース一部almost_empty_parser.c.txt 11/5 構文解析器および最終課題用テストプログラムtests.tar.gz 11/26 Python値を定義するヘッダファイルpyvalues.h.txt 11/26 Python値関連の関数群Cソースの一部almost_empty_pyvalues.c.txt ↑ 添付ファイル: 5-eval.ppt 210件 [詳細] 5-eval.pdf 325件 [詳細] 4-

  • 構文解析器 - Wikipedia

    構文解析器(こうぶんかいせきき)とは、構文解析をおこなうプログラム。パーサまたはパーザ[1] (parser)とも。プログラミング言語処理系の入力部分が代表的であるが、それに限らず設定ファイルの読み込みなど、構造を持った入力テキストの処理を行う。自然言語処理でも使われる。 構文解析のアルゴリズムには複雑なものも多いが[2]、パーサジェネレータの研究は盛んであり、そういったものを使用すれば、構文規則を記述するだけで構文解析器を自動的に生成できる(プログラムのソースコードが出力される)。 構文解析器の役割は基的に、開始記号に形式文法の規則を適用することで入力された文字列が得られるかどうかを判定することである。これは次の2種類の手法で行われる: トップダウン構文解析 - 構文解析器は開始記号を始点として、それを変換していって入力された文字列を得ようとする。直観的に言えば、まず大きな要素から開始

  • Racc でおてがる構文解析

    Ruby/Rails 勉強会@関西第36回で発表したスライド。構文解析についてと、パーサージェネレーターRaccの基的な使い方についてRead less

    Racc でおてがる構文解析
  • お手軽パーザー

    日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。

  • 1