タグ

ブックマーク / lucille.atso-net.jp (2)

  • lucille development blog » Blog Archive » Introduction to type inference

    JS 実装をしようかな、と思い立ち、 まずは型推論の知識をしっかり取得するところから初めようと考えています. そもそも、型推論とはなんぞや、というところからおさらいしてみます. 私が型推論について知りたいことの一番の目的は、 「型推論を行うことで動的言語の事前コンパイルを可能にしプログラムの実行を早くすることができるのではないか」, ということになりますので、それに特化した内容になっています. もちろん型推論には、プログラムを早くするという以外の目的もありますが、 ここではそれらは取り上げないことにします. 型推論(type inference)とは、簡単に言うと、 var muda = 7 というコードがあったら、 「変数 muda って Int 型(整数型)じゃね?」 とコンパイラがよろしく変数の型を決定してくれる(推測してくれる)機能になります. 静的な関数型言語(Ocam

    todesking
    todesking 2008/11/20
    型推論
  • lucille development blog » Blog Archive » The LLVM Compiler Infrastructure

    nyaxt さんの日記で知りました。 The LLVM Compiler Infrastructure http://llvm.org/ 要は、VM の API + VM ランタイム + JIT コンパイラ + バイトコード後のプログラムの各種最適化処理を含んだもの、という感じでしょうか。 LLVM のバイトコードを出力するように変更を加えた gcc も提供されているため、 o C プログラム -> LLVM バイトコード -> インタプリタ実行 o C プログラム -> LLVM バイトコード -> JIT コンパイル という一連の流れまでサポートしています。 Mac OS X の時期バージョン Leopard では、OpenGL(の実装)が LLVM 上で動くようになっています。 http://lists.cs.uiuc.edu/pipermail/llvmdev/2006-Au

  • 1