Slide 1

Slide 1 text

1ZUIPO͔Β3VCZͷϥΠϒϥ Ϧ͕࢖͑Δ SC@DBMMͷ঺հ @yohm13

Slide 2

Slide 2 text

About Me • ଜ੉༸հ • twitter : @yohm13 • github: yohm • ৬ۀ : ݚڀऀ • ౷ܭ෺ཧ • agent simulation • Ruby, C++ • ࠷ۙPython࢝Ί·ͨ͠

Slide 3

Slide 3 text

rb_callͱ͸ ͨͱ͑͹͜ΜͳrubyͷεΫϦϓτ͕͋Δͱ͢Δ Python͔ΒRubyͷϝιου͕࢖͑ΔϥΠϒϥϦ https://github.com/yohm/rb_call

Slide 4

Slide 4 text

Python Ruby Python͔Β͜Μͳ෩ʹݺ΂Δ

Slide 5

Slide 5 text

΋͏গ͠ෳࡶͳྫ generator΋OK Ruby Python

Slide 6

Slide 6 text

ྫ֎΋औΕΔ Ruby Python

Slide 7

Slide 7 text

Railsͱͷ࿈ܞ γϛϡϨʔγϣϯδϣϒ؅ཧRailsΞϓϦ OACIS https://github.com/crest-cassia/oacis • numpy • matplotlib • jupyter • pandas

Slide 8

Slide 8 text

SC@DBMMͷ࢓૊Έ

Slide 9

Slide 9 text

MessagePack-RPC MessagePack-RPCΛར༻ 1ZUIPO 3VCZ https://github.com/msgpack-rpc/msgpack-rpc ϝιου໊ + Ҿ਺ ฦΓ஋ ༷ʑͳݴޠͰ࣮૷͕ެ։͞Ε͍ͯΔ

Slide 10

Slide 10 text

1ZUIPO 3VCZ ϝιου໊ + Ҿ਺ ฦΓ஋

Slide 11

Slide 11 text

໰୊఺ ϝιουνΣʔϯͰ͖ͳ͍ Mongoid::CriteriaΫϥεͷΠϯελϯε ྫ 1ZUIPO 3VCZ ϝιου໊ + Ҿ਺ ฦΓ஋

Slide 12

Slide 12 text

ղܾࡦ 1ZUIPO 3VCZ ϝιου໊ + Ҿ਺ ฦΓ஋ ΦϒδΣΫτID Πϯελϯε͸RubyϓϩηεͷதͰอ࣋ͨ͠·· ΦϒδΣΫτͷIDΛฦ͢ JOTUBODF RubyObject Rubyͷobject΁ͷࢀরΛද͢ɻϝϯόʔʹidΛ࣋ͭ

Slide 13

Slide 13 text

“where”, {“price”: 1000} ΦϒδΣΫτID RubyObject Mongoid::Criteria instance Python Ruby object id, “asc”, “author” ΦϒδΣΫτID RubyObject Mongoid::Criteria instance Python Ruby Mongoid::Criteria instance RubyObject

Slide 14

Slide 14 text

PythonͱRubyͷରԠؔ܎ __str__ __repr__ __eq__ __dir__ __iter__ __len__ __getattr__ __next__ to_s inspect == public_methods each size method_missing next PythonͷRubyObjectΫϥεʹ͜ΕΒͷϝιουΛఆٛ͢Ε͹ ͍͍ͩͨಈ༷͘ʹͳΔ

Slide 15

Slide 15 text

ଞʹ΋ • MessagePackͷextension type Λ࢖͏ • ࢀরͷ਺Λ਺͑ͯϝϞϦϦʔΫ͠ͳ͍Α͏ʹ͢Δ • generatorରԠ ࣮࣭Python 130ߦ, Ruby 80ߦͷඇৗʹখ͞ͳϥΠϒϥϦʹ Python,Rubyͱ΋ʹॊೈͰɺޓ͍ʹࣅͨݴޠ pipͳͲͰ؆୯ʹར༻Ͱ͖Δ༷ʹ͢Δͷ͕ࠓޙͷ՝୊

Slide 16

Slide 16 text

https://github.com/yohm/rb_call http://qiita.com/yohm/items/e4d6759e1783d382b61b

Slide 17

Slide 17 text

Thank you!