2019/02/27に、JJUG(日本Javaユーザグループ)さんでのナイトセミナー、「JVM言語を作ろう! GraalVMで遊ぼう!」で登壇をしました。
「GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう」というセッションです。スライドは、こちらです。
www.slideshare.net
セッション概要
オラクル社からGraalVMというものが発表され、話題を呼んでいます。GraalVMは、HotSpot VM上に新しいJITコンパイラGraalと、言語実装用フレームワーク/ASTインタプリタであるTruffle、ネイティブイメージ作成機能とその実行に使われるSubstrateVMを併せ持ったものです。すでに、Truffleを使用したJavaScriptやRuby、R、Pythonの実装がGraalVMにあり、これらの言語とJavaは、コードから"相互に"呼び出しができます。独自の言語も、ASTにさえできれば、Truffleを使い、JVM上で実行できるよう実装できます。私も、簡単な四則演算の言語を、Truffleを使って実装したことがあります。Truffleは、Graal上で動作するものです。Graalには、こうして複数の言語を相互運用する際に、高いパフォーマンスを出せるよう、機能が実装されています。
このセッションでは、TruffleとGraalの概要と、言語を実行する際に、この2つがどのような働きをするか、を主に解説します。私もTruffleを使って、言語を実装してみようかな、と思っていただくことがゴールのセッションです。
実はナイトセミナーは初
JJUG CCCには、5、6回登壇していますが、ナイトセミナーは、実は今回が初めてでした。関西の人間が、平日夜の東京でのイベントに行く機会は、なかなか作れないものですね。今回は、スピーカーとして招待していただいたので、参加できました。
正確な参加人数は、私にはわかりませんが、 150-200人はいらっしゃったのではないでしょうか。さすが東京…