タグ

compilerに関するogawastのブックマーク (5)

  • compiler - Vidar Hokstad V2.0 Rubyでコンパイラを書くチュートリアル

    (To follow my compiler related posts, either subscribe to my main RSS feed, or the compiler specific one ) Back in March 2008 I started publishing a series on how to write a compiler in Ruby, bottom up, that is, starting with the code generator and working my way up instead of the more traditional approach of writing the parser first. Here are the parts I've published on my blog so far. (The bits

  • Javaでコンパイラの基礎を理解する

    そもそもコンパイラの中ってどうなっているの? Javaでコンパイラの基礎を理解する(1) 普段、なにげなく使っているコンパイラ。中身を理解すると、プログラミングへの意識が変わり、技術力もつきます! 開発者必見です

  • 簡単な仮想計算機を作ろう(準備編)

    教育界、技術者コミュニティでJava言語の教育と啓蒙に長年携わってきた筆者が、Javaを通してコンパイラの仕組みを分かりやすく紹介する。(編集部) 仮想計算機もどき 前回はコンパイラを自作する意義と基構成について述べましたが、今回はいよいよコンパイラ作成の準備に取り掛かります。 コンパイラを作成するには、ターゲットとなる計算機が必要です。このため、コンパイラに関する専門書では、具体的なCPUと、そのCPUがサポートする命令セットとを決めて解説している場合が多いのです。この連載では基的な話から進めますので、スタックを使った仮想計算機を作成して使うことにします。 「仮想計算機」と聞くと期待感が高くなると同時に、難しそうと思われるかもしれません。しかし実際は、「仮想計算機もどき」といった方がいいぐらいの簡単なものを対象とします。実際のコードを見ると、それほど難しくはありませんから、安心してく

    簡単な仮想計算機を作ろう(準備編)
  • GCC, the GNU Compiler Collection

    GCC, the GNU Compiler Collection The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these languages (libstdc++,...). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user's freedom. We strive to provide regular

  • Javaでコンパイラの基礎を理解する 第1回そもそもコンパイラの中ってどうなっているの? (1/2) - @IT

    プログラミング言語処理系の実装 Ajaxなどによりスクリプト言語のJavaScriptの良さが見直されたり、Railsの出現によりプログラミング言語Rubyへの注目度が高まったりしています。これだけプログラミング言語が注目されるようになってくると、独自のプログラミング言語を作成したいと考える開発者も増えてきていることかと思います。 コンパイラ作成を勧める3つの理由 Javaなどのプログラミング言語を使えるようになって、自分が作りたいプログラムを自由に作成できるようになってくると、既存のソフトウェアでも簡単なものを自作してみたくなるものです。せっかくプログラムを組めるようになったのですから、いろいろと自分で作ってみたいと思うのは当然です。中でも、プログラミング言語処理系は一度は作成してみたいと思うでしょう。 一般のコンピュータ利用者と違って、開発者は日ごろからコンパイラやインタプリタを使って

    Javaでコンパイラの基礎を理解する 第1回そもそもコンパイラの中ってどうなっているの? (1/2) - @IT
  • 1