Iokeを入れてみた

Ioke というプログラミング言語が面白そうなので入れてみたよ。

IokeというのはJVM上で動く言語で、ガイド によるとIo、SmalltalkRubyLispの影響を受けてるらしい。おっと、ガイドを日本語訳してくださっている方 を発見! 助かります。

インストールは次のようにやった。自分はWindows環境。

1. JREがインストールされていなかったらインストールする。

JRE5以降が必要。

2. Iokeのダウンロードページ からioke-P-ikj-0.4.0.zipをダウンロード。

3. ダウンロードした圧縮ファイルを適当な場所に展開する。

4. コマンドプロンプトを開き、環境変数JAVA_HOMEにJREディレクトリを設定する。

私の場合は以下のようにした。

set JAVA_HOME=C:\Program Files\java\jre6

5. 環境変数PATHにIokeのbinディレクトリを追加する。

あとはコマンドプロンプトからiokeと入力すると、しばらく時間がかかってから起動する。起動すると対話環境のプロンプト“iik>”が表示される。

C:\Documents and Settings\paz\My Documents\program\ioke>ioke
iik>

しかし、何か入力してEnterを押そうものなら、すごい勢いでエラーを吐いて落ちる (T_T)

Exception in thread "main" java.lang.NullPointerException
        at ioke.lang.IokeIO$2.activate(IokeIO.java:129)
        at ioke.lang.TypeCheckingNativeMethod.activate(TypeCheckingNativeMethod.java:50)
        at ioke.lang.IokeObject.activate(IokeObject.java:1053)
        at ioke.lang.IokeObject.getOrActivate(IokeObject.java:1038)
        at ioke.lang.IokeObject.getOrActivate(IokeObject.java:514)
        at ioke.lang.IokeObject.perform(IokeObject.java:659)
        at ioke.lang.IokeObject.perform(IokeObject.java:592)
        at ioke.lang.IokeObject.perform(IokeObject.java:522)
        at ioke.lang.Message.sendTo(Message.java:999)
        at ioke.lang.Message.evaluateCompleteWithoutExplicitReceiver(Message.java:1145)
(中略)
        at ioke.lang.Message.sendTo(Message.java:999)
        at ioke.lang.Message.evaluateComplete(Message.java:1066)
        at ioke.lang.Runtime.evaluateString(Runtime.java:525)
        at ioke.lang.Main.main(Main.java:149)

C:\Documents and Settings\paz\My Documents\program\ioke>

上記ダウンロードページに「Windowsでの正常動作は保障しないよ」と書いてあるので仕方がない。幸いにも、プログラムを書いたファイルをコマンドラインで指定して実行するとちゃんと動くことがわかった。これで使うしか。