|
フリーの ECMAScript インタプリタ。
Java で記述された JavaScript インタプリタ。 |
バージョン 0.5 で追加:
-
AWT のイベントハンドリング。このため、ユーザーインタフェースを FESI で
構築・実験できるようになりました。
バージョン 0.6 で追加:
-
一般的なイベントハンドリング機能。
-
指定されたディレクトリや Jar ファイルからの動的な Java クラスの読込みと
動的な Bean の読込み (アプレットや GIF 画像を含む)。
-
Bean の読込みやイベントハンドリングの様々な例。
-
新しいコマンド、describe。
バージョン 0.7 で追加:
-
Bean のプロパティを ECMAScript プロパティとして扱えるようサポート。
-
load ルーチン (BasicIO の一部として)。
-
速度の改善 (とくに Java アクセスで)。
-
様々なバグの修正。
バージョン 0.8 で追加:
-
オブジェクトが Bean として宣言されていない場合も含めて、
Bean のプロパティを ECMAScript プロパティとして扱えるようサポート。
-
インデックス付きプロパティの引数として、または
ネイティブな Java 配列が必要な場合に、ECMAScript の配列が与えられるようにしました。
-
jslib を大きく改善。ECMAScript のオブジェクトや配列の生成方法、
オブジェクトを Bean として宣言する方法、関数を ECMAScript の関数のように見せる方法、
JSException に隠された元の例外の取得方法が改善されました。
FesiPop の例も参照して下さい。
-
コマンド @clear を追加。
コマンドは一意な先頭部分で指定できるようになりました。
0.8 と 0.9 の番号付けには一部混乱があります。
0.9 からはパッチレベルは括弧内に入れて 0.9(2) などとしました。
リリース 0.9 アルファで追加:
("JIT" 利用可能に、使うとパフォーマンスが 2 倍になります。
いいことですけど、喧伝されているほどではないですね)
-
(1): JSException 生成時に元のエラーが捕捉可能に。
-
(2): 文字列以外の Java オブジェクトの Enumeration でのバグを修正。
-
(3): 引数の特殊な変数へのインデックスによるアクセス、getOriginalException、
typeof undefined のバグを修正。コマンド @pwd の追加。
Database アクセス機構の追加。
-
(4): データベースインタフェースの完成、evalAsFunction の追加、インタプリタにオプション -T の説明を追加。
-
(5): データベースインタフェースのちょっとした内部改善、
正規表現、tryEval 機能。FesiFTP の例が追加されました。
-
(6): with(javaObject) のサポートを改善、FesiFTP の例を改良、
便宜的な関数 new File().readAll、ちょっとした内部コードの改善。
注意: データベース拡張の getLastError は、
エラーがないときには (undefined に代わって) null を返すようになりました。
-
(7): バグの修正: 読み込まれたファイルやストリームはどの場合でも (エラーの
場合でも) 閉じる、ProgramError 例外は FESI 内部エラーによって起きることに変更。
@describe および @listall コマンドの改善。
より多くの場所で空文に対応 (とくに function(){})。
IBM の XML4J パッケージを使った XML パーザの例を
追加。関数 makeObjectWrapper(object) を JSGlobalObject に追加、
任意のオブジェクトを JSObject として扱えるようにしました (例えば eval 関数で
そのオブジェクトを評価シーケンスの "this" にできるようになりました)。
文字列を引数付き関数のように扱う評価をサポート。
インタプリタ (-s) と新たな拡張 (BasicIOs) で Swing の
サポートを追加。
-
(8): いくつかのインタフェースのクラスのオブジェクト呼び出しのバグ修正。
Swing コンソールモードのバグを修正。
throwError を追加。
-
(9): @describe で FIELD と PROPS の値を表示。
@load と load() はモジュール検索辞に FESI.path (あれば) と
クラスパスを見るようになりました。Jar および Zip ファイルも含まれます。
コマンド @path は試用中の読込みパスを表示。
インストールの説明を更新。
Beta 1 - インタフェースルーチンの Java アクセスにあったエラーを修正。
FesiForm の例を追加。
Beta 2 - インタプリタの再起呼び出しのバグを修正。
Swing 版にシンプルな編集環境を追加。
Beta 3 - Netscape との互換性のために Package を Packages に名前変更。
Swing の開発環境を改善。
Beta 4 - SetFullYear を追加、new Date() 関数のバグを修正。
for や while ループで使われる continue のバグを修正。
1.0 - 1998 年 10 月 17 日 - ループの扱いのちょっとした修正。
バイナリディストリビューションに ORO ライブラリを追加。
1.0.1 - 一般公開はされず
バッチファイルで FESI_HOME を使用 (Matt Humphrey より)。
Date(date) コンストラクタのバグを修正 (Hannes Wallnoefer より)。
評価機構の getWelcomeText が public に。
1.0.2 - 1999 年 1 月 16 日
tryEval が (最初の引数ではなく) 評価された値を
返すように変更、ドキュメントどおりになり便利に (Kurt Westerfeld より)。
getVersion と getWelcomeText を JSUtil パッケージに追加。
Java 配列の @listAll のバグを修正 (Kurt Westerfeld より)。
MathObject の初期化が JBuilder ユーザを助けるように移動された。
EcmaScriptException の表示のバグを修正 (Kurt Westerfeld より)。
Interpreter のルーチン doWork が public に (ユーザーコードに
インタプリタを埋め込みやすくするため)。
インタフェースの内部クラスでのルーチン検索を改善 (Rich Kadel の
アイデアに基づく)。
1.1 - 1999 年 3 月 7 日
注意: JDK1.1.7 で使う場合、
swinggui では Swing 1.1 (javax.swing) を使用のこと!
新しいオプション -e を使うとコマンドラインから
拡張がロードできます。
継承を簡易化し Swing や ORO クラスがなくても
コンパイルできるように、
インタプリタや GUI クラスの構造を変更。
Java 1.2 で利用可能に。Java 1.2 互換の ORO クラスを
含む。
CORBA スタイルのプロパティ (接頭語 set/get がない
ルーチン) へのアクセスを追加。
Kurt Westerfeld より:
MS 環境をサポートするためにコンソール周りを修正。
ESObject で、適切なデフォルトの文字列値を
もたないオブジェクトを文字列に
変換すると無限ループになるバグを修正。
Database 拡張で、接続と行セットのために
getMetaData() を追加。
1.1.1 - 1999 年 3 月 15 日
ウェブのドキュメンテーションを整理。
Linux 上で動作確認 (AWT GUI で文字がすべて二重になります……
ごめんなさい)
ごく小さなコード整理
メインページに戻る
最終更新日 (原文): 1999 年 3 月 15 日
(翻訳): 1999 年 4 月 1 日