AdventCalendar-2018.md これは高知工科大 Advent Calendar 2018の8日目の記事です. Graal/Truffle について紹介したかった 最近私の中で話題になっている,Graal/Truffle について書く. すごく抽象的なことしか述べない. 動的なプログラミング言語の高速化の辛さ JavaScript や Ruby , Python などといった,動的なプログラミング言語の高速化が難しいことは よく知られている. 例えば,型がないので,式の実行時にデータの種類をチェックし,言語セマンティクスに従って処理を振り分ける (型ディスパッチ)必要がある. また,関数の定義を実行中に変えることができたりするため,関数呼び出しの際は,その前にどの関数を 実行するのかを調べてからその関数に処理をとばす必要がある. このような,処理の振り分け(ディスパッチ)にか