Archive for 6月, 2011

2011/06/21

[Smalltalk] 第33回Smalltalk勉強会のお知らせ

6/29(水)は定例のSmalltalk勉強会です。
http://www.smalltalk-users.jp/Home/gao-zhi/dai33kaismalltalkbenkyoukai

今回のテーマはちょっとマニアックですが、「シリアライザ」です。私が最近StOMPというシリアライザを開発したのでその紹介も兼ねる部分があるのですが、あまりStOMPに偏らずに他の様々なシリアライザも平等に取り扱いたいと思います。時と場合に応じてシリアライザを使い分けるための助けになれば幸いです。

お気軽にどうぞ。

広告
2011/06/20

[Smalltalk] StOMP発表しました

このたびStOMPというバイナリのシリアライザを開発しました。本日各種ML等にアナウンスしておきました。

StOMPの開発の動機となったのは、とにかく自分で隅から隅まで把握できるバイナリのシリアライザが欲しいなと思ったことでした。私はSIXXというXMLシリアライザの開発者でもあるので、ベースとなるフォーマットをXMLからMessagePackに移し替えればすぐにできるのではないかな、という軽いノリで作りはじめました。

SIXXの時に比べると、同等の機能を有しつつコードはだいぶすっきりしたものになりました。そして当然ですが、バイナリなのでXMLに比べればたいそうコンパクトで速いです。

マルチSmalltalk処理系に対応したシリアライザとしてはSRPというものが既にあるのですが、ベンチマークを取った結果からすると、幸いにしてStOMPのほうが勝っています。

読み込みに関してはFuelというPharoのシリアライザがたいそう速く、これには及びません。Fuelは読み込みが速くなるようにフォーマット上の工夫を行っているのですが、StOMPは単純な方式で作られています。このため読み込みの分野でFuelに勝つということは、大きな変更を行わない限りないでしょう。

とはいえStOMPはRPCやKVSなどで小さなデータを繰り返しシリアライズ・デシリアライズするという使い方を想定しているので、今のままでも良いのかなと思っています。

使い方はきわめてシンプルです。

皆さん是非お使いください。