第11回Ruby勉強会@関西に行ってきた

サイン

行ってきました.詳細は日本Rubyの会 公式Wiki - KansaiWorkshop11にて.以下,感想であって,レポートではありません.

Exerb入門

マカーには殆ど縁のない話だったけど,YAMLで書かれたレシピファイルを自動生成したりとか,ってのはスゲーCoolな感じがした.てかYAML良いな.RubyやるならXMLよりYAMLだな.
るびまをちゃんと読まないと.してだな,Plag○erみたくナウでヤングな感じのをRubyでも!みたいな.実現できたら流行りそう.

RRSE

これは便利くせぇ.ボクはVim派ではなくEmacs派なので,こーゆーのは大歓迎.補完機能とか楽しみにしてますよ,とか書いてみたものの,補完しなければならないほどにRubyのメソッドって長くないよね.

Rubyクイズ

結構難しかったと言うか,ハマったと言うか.いやそれはちゃんとボクが言語仕様を学んでないからなんだろうけど.参照がどうとか破壊的だとかは,落とし穴なんじゃないかなマジで.

ライトニングトーク

一言で言うと「ワロス」.もう一言付け加えると「ぜひ参加させてください」.大阪で,まつもとゆきひろさんやら,もう兎に角豪華なメンバーが,えーっと早すぎて覚えてませんが楽しみです.(駄目だなー)

Ruby初級者向けレッスン

初心者ではなく初級者ってのが,相変わらずポイントだよなと思う.だって初心者はイテレータなんて「使う側」で,「作る側」ではないよなと.結局,yieldってブロック渡してcallしてんのと,あんまり変わらないのかな.

イテレータ実験
irb(main):001:0> def hoge
irb(main):002:1>   yield
irb(main):003:1> end
=> nil
irb(main):004:0> def fuga(&b)
irb(main):005:1>   b.call
irb(main):006:1> end
=> nil
irb(main):007:0> hoge{p "hello"}
"hello"
=> nil
irb(main):008:0> fuga{p "hello"}
"hello"
=> nil

ちなみに,ブロックを渡さないときのエラー出力は違う.

irb(main):009:0> hoge
LocalJumpError: no block given
        from (irb):8:in `hoge'
        from (irb):15
irb(main):010:0> fuga
NoMethodError: undefined method `call' for nil:NilClass
        from (irb):11:in `fuga'
        from (irb):16

ブロックをそのまま渡すか,ブロックをオブジェクトとして渡すか,ということかな?でもブロックってオブジェクトになり得るのかしら.ってそれはクロージャなのか?

irb(main):011:0> b = lambda{p "hello"}
=> #<Proc:0x00025180@(irb):11>
irb(main):012:0> hoge{b.call}
"hello"
=> nil

もちろん,こんな意味わからんこともできるわな.

irb(main):013:0> def hige(b = lambda{})
irb(main):014:1>   b.call
irb(main):015:1> end
=> nil
irb(main):016:0> hige b
"hello"
=> nil

はぁぁ,馬鹿っぽい.ただ,これだとブロック渡さなくてもエラー出ませんよ:)


どうでも良いことだけど,RubyのinjectはHaskellでいうとこのfoldlなんだな.

irb(main):001:0> (1..10).inject(1.0){|r,e| r /= e}
=> 2.75573192239859e-07

Hugs.Base> foldl (/) 1 [1..10]
2.75573192239859e-07


もういっちょどうでも良いことだけど,コウザイさんのプロフィールのさぁ,

Rubyとは大学の授業で出会いました。

なんて良い大学なんだ!!ウチなんかCとJavaだけだYO!

くく
array << elem

くくって読むのが,今年は来るかもしれない.

懇親会

サイン貰う

予定通り,かずひこさん(はじめよう RoR)とid:babieさん(ライド・オン・Rails)にそれぞれサインを頂きました.有り難や〜.いいコードを書いていい恋をしたいと思います.

PHPは邪悪

なんでも,一度Rubyに触れてしまうとPHPには触れられないようです.激しく同意.Railsなんかに触れちゃうと,もっと酷い結末が・・・!?

男はロックで

今度は原チャでなくバスで行きたいと思います.

会話が楽しかった

前回は「恐縮です」って感じで,それほど輪に入れなかった感があったけれども,今回は結構会話に参加できたかな?id:hakobe932が結構テンション高くてビビった.そして懇親会こそRuby勉強会のメインイベントではないかと思ってしまった.情報交換は必要だよ.

次回は

次回は9月になるのかな.とりあえず,8月のRails勉強会も是非参加したいところ.ある程度Railsもわかるようになってきた気分ではあるし,その頃にはオリジナルのアプリケーションの一つでも作っていると信じて.