日記帳

日記です。

BeanShell

プログラミング言語 BeanShell その4

http://d.hatena.ne.jp/sa-y/20060724 の続き. callstack プロパティ callstack プロパティは bsh.Callstack クラス*1のインスタンスでそれまでのメソッド呼出しの経路を表わしています.中身は NameSpace オブジェクトの積まれたスタックになっており,メ…

プログラミング言語 BeanShell その3

http://d.hatena.ne.jp/sa-y/20060720 の続き.正直 Java のコードの実行は普通にコンパイルすればいいので BeanShell らしい使い方を考えてみる.BeanShell の BeanShell らしい所というと以下の3つくらいでしょうか? namespace プロパティ caller プロパ…

BeanShell で TestSprite.java

Java のコードをそのままインタープリトできるってことは sdl4gcj*1 の TestSprite.java もそのまま動くはず… と思ったけど微妙に修正が必要でした*2. TestSpriteForBeanShell.java % bsh-Interpreter TestSpriteForBeanShell.java Screen is at 8 bits per…

プログラミング言語 BeanShell その2

http://d.hatena.ne.jp/sa-y/20060719 で BeanShell にはクラス定義ないって書いたけど 2.0 系からは Java のソースをのままインタープリトできるようになるのでクラス定義もできるらしい. http://www.beanshell.org/manual/bshmanual.html のマニュアルは …

プログラミング言語 BeanShell

http://d.hatena.ne.jp/sa-y/20060718 の続き.実行速度は遅いですが BeanShell の言語自体は結構気に入りました. http://www.beanshell.org/manual/bshmanual.html ECMAScript 3rd Edition からプロトタイプ継承と標準ライブラリ(ArrayとかRegExpとか)をな…

TestSprite.bsh

なんか恒例のやつ.BeanShell では任意の Java オブジェクトが扱えます.gcj でコンパイルしてあるので sdl4gcj*1を使えば当然 SDL も扱えるわけです.そういうわけで SDL の testsprite.c の BeanShell 版. #!/usr/bin/bsh-Interpreter import sdl4gcj.*; …

BeanShell を gcj でコンパイル

BeanShell*1 は Java で書かれた組み込み可能なスクリプト言語です.BeanShell を含めた Java ベースのスクリプト言語全般に言えることですが,インタープリタ単体で起動するとその度に JVM を起動することになって,起動に非常に時間がかかります.*2そのた…