KawaとはJavaで書かれたフレームワークであり、Schemeというプログラミング言語を実装し他の言語も実装することも出来る。GNUプロジェクトの一部である。

名はポーランド語でコーヒーのことを「」と呼ぶことに由来する。Javaの名もコーヒーに由来している事に関連する。

Javaとの統合 Scheme以外でも以下のコードでJavaのオブジェクトフィールドやメソッドにアクセスすることができる。

(invoke object 'method argument ...)

これはJavaメソッドを起動するものでJavaにおけるobject.method(argument, ...)と同じ動作をする。

また以下の入力でオブジェクトのフィールドにアクセスすることができる。

object:field-name もしくは (invoke object 'field)

"invoke-static"というファンクションでスタティック(クラス)メソッドを起動することもできる。

Kawaと他のJava仮想マシンインプリメンテーションを組み合わせるなどでKawaはJavaコード(Javaにおいてschemeファンクションを作成)を使って拡張することも可能である。

使用法 GNU/LinuxにてKawaを実行させるには以下のように入力する

export CLASSPATH=$CLASSPATH:/path/to/kawa/kawa.jar java kawa.repl

SchemeのファイルをJavaクラスファイルにコンパイルする時は-Cパラメータを使用する。

java kawa.repl --main -C file.scm

これによって"java file"をタイピングすることで実行できる"file.class"を生成する。またアプレットやサーブレット(サーブレットをコンパイルするときはCLASSPATHを宣言した上で"servlet-xxx.jar"を実行しなければならない)。

脚注

関連項目

Scheme Java

外部リンク