タグ

2012年2月18日のブックマーク (16件)

  • 31.2. 抽象構文木 — Python 2.6ja2 documentation

    31.2. 抽象構文木¶ バージョン 2.5 で追加: 低級モジュール _ast はノード・クラスだけ含みます。 バージョン 2.6 で追加: 高級モジュール ast は全てのヘルパーを含みます。 ast モジュールは、Python アプリケーションで Python の抽象構文木を処理しやすくするものです。抽象構文そのものは、Python のリリースごとに変化する可能性があります。このモジュールを使用すると、現在の文法をプログラム上で知る助けになるでしょう。 抽象構文木を作成するには、 ast.PyCF_ONLY_AST を組み込み関数 compile() のフラグとして渡すか、あるいはこのモジュールで提供されているヘルパー関数 parse() を使います。その結果は、 ast.AST を継承したクラスのオブジェクトのツリーとなります。抽象構文木は組み込み関数 compile() を使って

  • Kivy programming contest #1 is over! – Txzone

    ikeikeikeike
    ikeikeikeike 2012/02/18
    Kivy色々
  • GitHub - dabeaz/ply: Python Lex-Yacc

    PLY is a zero-dependency Python implementation of the traditional parsing tools lex and yacc. It uses the same LALR(1) parsing algorithm as yacc and has most of its core features. It is compatible with all modern versions of Python. PLY was originally created in 2001 to support an Introduction to Compilers course at the University of Chicago. As such, it has almost no features other than the core

    GitHub - dabeaz/ply: Python Lex-Yacc
  • プログラミング言語処理

    プログラミング言語処理 講義資料 一覧 全講義資料 pdf版(version 1.1, 108ページ)は、 こちら 言語処理系とは インタプリタとコンパイラ 言語処理系の基構成 例題:式の評価 BNFと構文木 解釈実行:インタプリター コンパイラとは ソースコード 字句解析の基礎:正規表現によるパターンマッチ 字句解析と正規表現 自動字句解析生成プログラム:lex 数式の構文解析:top-down parserの作り方 構文規則 top-down parser の作り方 構文解析の基礎 top-down parserとbottom-up parser 上向き構文解析と還元 演算子順位構文解析法 LR構文解析法 構文解析生成プログラムyacc tiny Cについて tiny Cの言語仕様 tiny C

  • FrontPage - PukiWiki

    2008/01/11からのアクセス回数 616386 竹 浩のページ † このページは、竹 浩(たまねぎおじさん)のWikiページです。twitter: @takepwave 、e-mail: take.pwave@gmail.com 以前のホームページでは、SmartDocで記述して公開していましたが、Wikiを使って 随時追加、更新することにしました。 ↑ 雑誌掲載記事の原稿 † 雑誌に掲載された記事の原稿のリンクを以下に示します。(投稿原稿なので、掲載内容と異なる部分があります、あらかじめご了承下さい)。 WEB DB Press Vol.29 既存機能との融合を既存技術で考えよう(Springの紹介記事) 組み込みプレス VOl.14 ICタグを使った書籍管理システムの構築 Software Design 2009/10 再考シェルスクリプト Software Design 2

  • レンタルサーバ + Webシステム開発 = E-business (JF:Lex-YACC-HOWTO.html)

  • Create Your Own Programming Language

    Want to create a programming language, but don't feel like going through one of those expensive and boring 1000-page books ? Well, you're not alone ... The best system to create your first programming language.

  • 現在のPyPCASTLのソースコード - Yet Another Ranha

    CodeReposにあげるのとかはどうかと思うので、取りあえずここに張ってみる。 結構大きいので注意(??) 一応PLYというPython Lex Yaccというモジュールが必要ですので、適宜入手してください。どうしたら良いか私には分かりません。 ソースコードを見ていたら気持ちが悪くなったという報告を受けました。その通りです、これは相当に気持ち悪いです。 Pythonレベルでも勿論そうですが、それ以前に無駄があったり定義通りじゃないとかきもい事に成っているのですが、まぁこういうのは出しちゃうのが大事なのでどなたかが新しく実装してくれれば良いんですよね。 後、あれ(forとか)を追加してくれとかいう話が飛ばされたのでforとかを実装しましたが、面倒くさいのでpasteはしません。 import lex from ast import AST import sys tokens = ( 'NU

    現在のPyPCASTLのソースコード - Yet Another Ranha
  • Yacc - Wikipedia

    Yacc(英: yet another compiler compiler、ヤック)はパーサジェネレータの一つである。1970年代にAT&TでUNIX用にスティーヴン・カーティス・ジョンソンが開発した。 概要[編集] 名称[編集] Yacc は yet another compiler compiler(またひとつのコンパイラコンパイラ)に由来する。コンピュータ黎明期には「自動プログラミング」と呼ばれたプログラミング言語処理系の技術の進展の方向として、当時、機械語プログラムを生成するコンパイラの次はコンパイラを生成するコンパイラコンパイラであろう、ということで盛んに研究がされており、そのためコンパイラコンパイラを名乗る研究が他にもあれこれ存在した。 パーサはコンパイラの全てではないので、コンパイラコンパイラと呼ぶには Yacc のようなパーサジェネレータは不足と言えなくもないが、特段意識さ

  • Lex - Wikipedia

    Lex(レック、レックス)は、1975年にエリック・シュミットとマイク・レスク(英語版)によって開発された、レキシカルアナライザ(字句解析プログラム、字句解析器)を生成するプログラムである。unixにおける標準のレキシカルアナライザとなっており、POSIX標準ともなっている。コンパイラの作成のためにパーサジェネレータのyaccとともに使用されることも多い。 概要[編集] 名称[編集] Lexはレキシカルアナライザジェネレータである。すなわちレキシカルアナライザ(字句解析プログラム、字句解析器)の生成ツールであり、Lexの名称も英語のLexical analysisからきている。 用途[編集] 字句解析はテキスト中の文字列の変換、カウント、抽出などさまざまな目的に使われ、その応用領域は、コンパイラやコンバータの作成を筆頭に、自然言語処理や簡単な整形まで幅広い。 このうち、コンパイラにおけるレ

  • http://members.jcom.home.ne.jp/jintrick/2004/06/26/CbHtmlInlineParser.py

  • http://members.jcom.home.ne.jp/jintrick/2004/06/22/CbHtmlInlineParser.py

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Dabeaz

    Welcome! Dabeaz is David Beazley, a computer scientist, educator, and researcher with more than 35 years of experience. Dave has been most visible in the Python community where he has created various software packages, given conference talks, tutorials, and is known as the author of Python Distilled (Addison-Wesley), the Python Essential Reference (Addison-Wesley), and the Python Cookbook (O'Reill

  • Algol 60 in PLY (Python Lex-Yacc)

    PLY (Python Lex-Yacc) で作る Algol 60 処理系 2008.9.26 - 2008.10.17 - 2008.12.8 - 2009.2.17 (鈴) 第1部 1. はじめに 2. Algol 60 とは 2.1 Algol 60 修正報告書 3. PLY の導入 4. 字句解析 4.1 字句解析ルールの記述 5. 構文解析 5.1 構文解析ルールの記述 5.2 Algol 60 生成規則の修正 6. ここまでのまとめ 第2部 7. 名前の解決 8. インタープリタ - 文の単方向リンクと goto 文 9. インタープリタ - 手続きとディスプレイとスタック 10. インタープリタ - 式の中からの大域脱出 11. インタープリタ - call-by-name の実現 12. インタープリタ - のこりの言語要素 第3部 13. インタープリタへの標準関数の組

  • 第9章 速習yacc

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