タグ

compilerに関するyoushowのブックマーク (12)

  • Table of Contents

    How to write your own compiler Silvano Rivoira, Politecnico di Torino, 2009 Table of Contents 1.       Introduction 2.      Source language 3.      Lexical analysis 4.      Parsing 5.      Error handling 6.      Symbol table 7.      Types 8.      Type checking 9.      Code generation 10.     Object oriented code generation previous                   ToC                next

  • 最新Cコンパイラーの最適化事情 - Radium Software

    State of the art C compiler optimization tricks, Felix von Leitner, Linux Kongress 2009. 最近のCコンパイラーの最適化能力についてまとめたプレゼンテーション。定数の扱いやインライン展開などの基的な項目から始まって,分岐の削除やベクトル化, SIMD 化など,最新のコンパイラーに搭載されている様々な機能について調べている。 この手の分岐の削除はほとんどのコンパイラーで有効らしい。 ベクトル化については gcc がだいぶ頑張っている印象。 「gcc は全プラットフォームにおいてビデオコーデックプログラマーより賢い」 これらの最適化が実際のコードでどのように機能するか気になって逆アセンブリコードを覗いてみる人も少なくないと思うけれど,それを代わりにやってくれた感じだ。この手の話題に興味がある人ならば,目を通

    最新Cコンパイラーの最適化事情 - Radium Software
  • オープンソース情報データベースシステム(OSS iPedia) のコンテンツについて

    youshow
    youshow 2008/09/02
    iccとgccの比較
  • http://www.watalab.cs.uec.ac.jp/

  • プログラミング言語を作る

    このページの目的は、「独自のプログラミング言語を作る」ことです。 「プログラミング言語を作る」というのは、 やったことのない方からすれば、ずいぶん無謀な目標に見えるのかもしれません。 でも、いくつかの基礎知識さえ修得すれば、技術的には、 実はそんなに難しいものでもありません。 だったら、ひとつぐらい作ってみたいと思いませんか? なにしろプログラミング言語を作るなんて、 いかにもかっこ良さげじゃないですか。 私は作ってみたいと思いました。だから作ります。 プログラミング言語なんてもう山ほどあるのに、 今さら新しい言語なんて付け足して何をしたいんだよ! などというツッコミは入れてはいけません。 「なぜプログラミング言語なんか作るんですか?」 と聞かれたら、その答は そこにyaccがあるからだ。 で充分だろうと私は思います(yaccが何かは後述します)。 というわけで―― ただ私なんぞが新言語を

  • B3 OS/Programming(東京工業大学の授業:コンパイラのつくりかた)

    シラバス コースは、プログラミングの基について、ひととおりの技術を学び終えた受講者を対象とする。コースの目的は、実際のソフトウェアを開発する際に、具体的にどのようにプログラムを設計し、またどのように OS の機能を利用していけばよいか、感覚をつかんでもらうことである。このため、コースは講義中心ではなく、いくつかのソフトウェアの作成演習をとおして、そのソフトウェアのプログラムはなぜそのように設計されているのか等を考えてもらう。 1. 簡単な C コンパイラ 言語仕様を簡略化したCコンパイラを作成し、言語処理系の基構成を学ぶ。また関数呼び出しや配列参照など、C言語の各基機能が実際にどのような機械語に変換されていくのかを学ぶ。 実際に作成する処理系は2つで、まずはじめに字句解析の練習として、ごく簡単なLispインタプリタを作る。 その後、構文解析、コード生成の演習のため、C言語風の手続

  • Cコンパイラ設計(yacc・lexの応用)

    近年、Linuxやcygwinの普及によってだれでもyacc/lexを使って新しい言語を作成し、その処理系を作成することができるようになってきた。 G・フリードマンの「Cコンパイラ設計」は、yacc/lexの使い方を丁寧に説明した名著であるが、英語の原も日も絶版で、amazonのオークションでも買えないため日語訳を借り、OCRから復刻することにした。 Linux、cygwinではbison, flexが使われているので若干書と内容が異なる部分があるが、それも別枠で整理してみたいと考えている。 4章以降は、竹 浩のページ(Wiki)に追加中2008/05/15 コンピュータの発達とともに、これまでにCOBOL,FORTRAN、Pasca1,Lisp、C等、数多くのコンピュータ言語が作られてきました。一般には,新たなコンピュータ言語、あるいはそのコンパイラを作るなどということは

  • 自作コンパイラの部屋

    オブジェクト指向言語としてのJavaScript(2007/09/17更新) Web Application Security(WAS)に関する話題(2008/06/02更新) ockeghemの日記(はてなダイアリー) 2008-02-26 セキュリティの常識・非常識 パスワードの定期変更は「神話」なのか? 2008-01-27 45歳からのプログラミングこそ至上の悦楽 わーい \(^o^)/ PL/0を JS で書いたよー! 2008-01-07 これはMITMですか 2007-12-05 クロスサイトスクリプティング(XSS)とCSRFの違い早分かり(2) クイズ:XSSとCSRFはどこにありますか? 2007-12-03 クロスサイトスクリプティング(XSS)とCSRFの違い早分かり XSSはブラウザ上でスクリプトが動き、CSRFはサーバー上でスクリプトが動く 2007-12-01

  • Compiler Construction Lecture 琉球大学 by 河野真治

    Compiler Construction の授業 コンパイラとは何か 実行系のArchitecture Intel64 のアセンブラ 字句解析、構文解析、コード生成 部分計算と中間木 yaccによる構文解析 llvmを使ったコンパイル Micro-C の全体構成 コード生成の詳細 共通部分式 さらに進んだコンパイラ技術 参考書 Compilers: Pearson New International Edition: Principles, Techniques, and Tools More information: 今後の授業の予定 TL/1 小さいコンパイラの例題 repository レポートは、「Report on Compiler Construction Lecture Exercise 6.1 」という 形式のSubjectで メールでkono@ie.u-ryukyu.a

  • Ikuo NAKATA's HomePage

    〒184-8584 東京都小金井市梶野町3-7-2 法政大学 情報科学研究科 客員教授(2008年3月31日まで) 著書 中田育男: 「コンパイラの構成と最適化」第2版 朝倉書店,東京, 2009. 中田育男,渡辺坦,佐々政孝,滝宗宏: 「コンパイラの基盤技術と実践」 ーコンパイラ・インフラストラクチャCOINSを用いてー 朝倉書店,東京, 2008. 文中のいくつか例題と正誤表はウェブページ にあります. 中田育男: 「コンパイラの構成と最適化」 朝倉書店,東京, 1999(現在第7刷). 2000年度大川出版賞受賞 中田育男: 「コンパイラ」 オーム社, 東京, 1995(2010年12月第17刷). (PL/0'コンパイラのJava版、 JavaCC版、 yacc版もあります。また、COINS版は、 COINSのホームページの「Coins を使って新たなコンパイラを作る」の項にあ

  • Simplified Language for Embedded Compilation

    Index Simplified Language for Embedded Compilation 1. Introduction In the development of embedded systems, there is a need to understand multiple CPU architectures and to be able to use dedicated development environments. This situation gives rise to concerns that long term maintenance, including maintenance of the development environment itself, could become very difficult as the environment evol

  • kmyacc - 多言語対応LALRパーサー生成系

    What is KMyacc? kmyaccはyaccやbisonと同じLALRパーサージェネレータです。 yaccと互換性があり、生成される表が小さく、ホスト言語としてC以外にJava, JavaScript,Perlでも使うことができます。 News 2006.02.28: きむらさんによるWindows VC++用のパッチ 2006.02.16: version 4.1.4: Java, Perl, JavaScript版のパーサードラ イバのバグを修正。このバグは、ある種の文法で構文解析に失敗し実行時エラー を起こすというもの。C版にはこのバグはない。 2005.10.07: version 4.1.3: Java版に yyparsererror (YYERROR) 及びスタックの自動伸張を実装 2005.07.10: Demonstration program 2005.07.0

    youshow
    youshow 2008/01/06
    Javascriptもいけちゃう
  • 1