MessagePack

7
前へ 1 ・・ 3 4
SKS rep @repeatedly

要はこれなんだけど,cast(shared ubyte[])をつけないとコンパイル通らないし,つけても望んだ結果にならない http://j.mp/cqcXnV

2010-09-12 17:04:16
SKS rep @repeatedly

std.containerにも対応すべきかなぁ.しかしまだ全然つかいものにならんし…

2010-09-12 17:09:06
SKS rep @repeatedly

というか,メッセージパッシングって共有メモリに頼らない値のコピーじゃないっけ?それを考えると,受ける側にsharedはいらなくない?

2010-09-12 17:20:55
SKS rep @repeatedly

std.concurrencyのrecieveの元のgetメソッド呼んでるけど,これコード汚くない?

2010-09-12 17:21:32
Nobuyuki Kubota @nobu_k

なんか配列をデシリアライズしたときだけぶっ壊れるなぁ・・・。

2010-09-12 17:38:26
SKS rep @repeatedly

連想配列とかpopするときってやっぱりZipみたいにTupleになるんだろうか? #d_lang

2010-09-12 17:38:59
Sotaro Karasawa🍺 @sotarok

MessagePackによってどこかでserializeされたデータをPHPで扱う場合、stringとして扱うよりなんとなくこうmessage pack resource 的な型で扱ったほうが、バッファを関数に渡してデシリアライズしていくというモデルには良い気がする

2010-09-12 17:41:28
SKS rep @repeatedly

moveFrontってどういう時にいるの? > Range #d_lang

2010-09-12 17:44:54
SKS rep @repeatedly

UnpackedがArrayじゃなくてMapの可能性もあるから,それを考慮するとUnpackedだけじゃ足りない気がしてきた.Unpacked!(Array),Unpacked!(Map),Unpacked!(Single)みたいにしないと駄目か? #msgpackhack

2010-09-12 17:54:55
Hideyuki Tanaka @tanakh

デシリアライズ時、コンストラクタが複数ある場合にどうやって自動的にコンストラクタを選ぶか?

2010-09-12 17:56:53
Hideyuki Tanaka @tanakh

型が完全に一致しているコンストラクタが複数ある場合はエラーにしてしまうのがいいか、あるいは…

2010-09-12 17:57:28
SKS rep @repeatedly

とりあえずAndreiはstd.containerにMapを入れて,連想配列におけるRangeのサンプルを見せてくれ…

2010-09-12 18:06:11
SKS rep @repeatedly

MPObjectの中でalias via.array thisをすればUnpackedは消えるが,デシリアライズ結果というものをショートカットしてMPObjectに直接行くのもちょっと不安.そもそもMPObjectはRangeじゃないし.うむむ… #msgpackhack

2010-09-12 18:29:23
SKS rep @repeatedly

そういや,C++のイテレータ対応ってどうなったんだろ? #msgpackhack

2010-09-12 18:31:50
Nobuyuki Kubota @nobu_k

はい。valgrindしようとして別の環境で実行したら再現しませんでした。

2010-09-12 18:35:10
Nobuyuki Kubota @nobu_k

こっちの環境でvalgrindが何も言わなかったらもうMacでしか起こらないんだと思うよ。おうおう

2010-09-12 18:36:06
Nobuyuki Kubota @nobu_k

みきおさんとまったく同じ問題ではまってました・・・ RT @frsyuki: "Weird Behavior of Lua on Mac OS X" http://bit.ly/aQ95sE

2010-09-12 18:44:11
Nobuyuki Kubota @nobu_k

とりあえずportで入るLuaは使っちゃダメぽ。他のサーバでやることにしました。

2010-09-12 18:49:18
Nobuyuki Kubota @nobu_k

Bufferの仕様を若干変えないとmsgpack::packerのインターフェイスと合わんなー。

2010-09-12 18:56:00
Sadayuki Furuhashi @frsyuki

RPCのエラーは、[RESPONSE, msgid, error:String, data:Array] で、errorは "CallError.ArgumentError" という感じで、継承関係をドットで繋げた文字列。

2010-09-12 18:57:19
Sadayuki Furuhashi @frsyuki

dataは [["message"], ["CallError args"], ["ArgumentError args"]] という感じで、継承関係の例外クラス向けのデータ(←配列)を配列にしたもの。

2010-09-12 18:58:00
Nobuyuki Kubota @nobu_k

Luaはパッケージの環境依存が激しすぎるんだよなあ。configureは頑張っていろんなところで通るようにはしてあるけど・・・。あとWindows対応は・・・。

2010-09-12 19:48:58
Nobuyuki Kubota @nobu_k

今日frsyukiが何気なく言ってた、「例外は基底クラスさえ用意しておけば、後から互換性を壊すことなく詳細にできる(派生クラスを作れる)」ってのはその通りだよなあ。エラーをどう伝えるか、どう安全に実装するかって言うところばかりに注目していてその辺の性質を忘れてた。

2010-09-12 20:21:15
Nobuyuki Kubota @nobu_k

まあ後は機能の問題か。。。むずかし。

2010-09-12 20:24:07
前へ 1 ・・ 3 4