NEWT0_0.0.9_20050311_1 を公開しました。
今回のトピックはネイティブ関数の第一引数にレシーバを取るようにしたことと、Paul Guyot が作成してくれた protoNATIVE です。
ネイティブ関数のレシーバに関しては Paul に指摘を受けました。Newton C++ Tools や Simon Bell の Newton.framework との互換性を考えても第一引数のレシーバがあったほうがいいと判断して随時移行していきます。それとまだ全然未完成ですが互換用の Newton/*.h も追加しました。
protoNATIVE は libffi を使って C言語の動的ライブラリをスクリプトから使うことができるという優れものです。Paul に感謝 🙂
[変更箇所]
– #UNBIND を ClassOf するとエラーになる問題を修正
– 組込み関数を追加(IsArray, IsFrame, IsSymbol, IsString, IsCharacter, IsInteger, IsReal, MakeBinary)
– ネイティブ関数の第一引数にレシーバを取るようにしました。現在 移行中のために古い形式と新しい形式が混在しています
– 上記新形式のものから C言語関数名の接頭語を NS から Ns に随時変更しています(Cocoa が NS を使用しているため)
– プリント関係のルーチンを NewtPrint.c に移動しました
– Newton C++ Tools および Newton.framework との互換用に Newton/*.h のヘッダファイルを追加(未完成)
– Paul Guyot 作の protoNATIVE を contribute フォルダ(src と Mac OS X版のみ)に追加。ライセンスは MPL 1.1 です
[実行環境]
– Mac OS X 10.3 以上(フルスペック)
– Mac OS X 10.2 (注意:外部ライブラリの読込みができません)
– Linux (KNOPPIX 3.7 でコンパイル)
– Windows (MinGW+MSYS でコンパイル、protoREGEX は未対応)
⇒ NEWT0_20050311_1_src.tgz (download)
⇒ NEWT0_20050311_1_macosx.tgz (download)
⇒ NEWT0_20050311_1_linux.tgz (download)
⇒ NEWT0_20050311_1_win.zip (download)
Tags: NewtonScript
Wow dude.
Great!! I love it!