- Product Manager
- Web Engineer
- Customer Support
- Other occupations (60)
- Development
-
Business
- Product Manager
- プロダクトマネージャー
- 広報
- カルチャー推進・浸透
- 知財戦略立案・推進・発明発掘
- リスクマネジメント統括本部
- 内部監査
- AML/CFTコンプライアンス
- AML・金融犯罪対策Ops
- 金融コンプライアンス
- システム監査
- ビジネス採用担当
- 経営企画(予実・IR)
- HRBP
- Legal
- 債権管理/MFK
- ToB Sales
- インサイドセールス
- フィールドセールス
- インサイドセールス SDR
- インサイドセールス企画
- オンラインセールス
- SaaS営業、MFBC
- インサイドセールス MFBC
- セールス MFBC
- マーケティングリサーチャー
- マーケター
- データマーケター
- BtoBマーケティングリーダー
- CRMスペシャリスト
- イベントマーケター
- Other
【速報】RubyKaigi 2014レポ:Non-Linear Pattern Matching against Unfree Data Types in Ruby
RubyKaigi 2014の参加レポート速報!
Session
9/18(木) 15:30 Hall A
Non-Linear Pattern Matching against Unfree Data Types in Ruby (Egison Pattern Matching in Ruby)
Rakuten Institute of Technology , Satoshi Egiさん
参加レポート
Egisonというパターンマッチに特化していて、かつ人間が直感的に記述できる言語を作った話でした。そして、その実装をRubyに移植して、Gem化してるから使ってみてね!というお話しでした。
(Rubyはこんなに簡単にパターンマッチが書けるようになる世界で2番目の言語です(笑))
普通にRubyでパターンマッチを書こうとすると、配列や集合を複数回each等でネストしながらマッチするものを抽出しますが、Egisonを使えばすごく簡潔に直感的に書ける!しかもパターンマッチチングのカスタマイズが簡単にできる!
例では、ポーカーの手をパターンマッチしていました。
Rubyだとかなりの量のコードが必要だけど、このGemを使った例だと3行くらいでマッチング処理がかけるらしい。
めちゃくちゃ便利そうだけど実行速度はどうなんだろう。と考えていたら、やはり同じ質問が出ていた。
=> 作者的にはそんなに遅くないと思っているとのこと。
Koichi Sasadaさんからは、直感的にかけるということだが、一般的なプログラマがどれくらいで習熟できるものなのか。少なくとも初見ではちょっとそう感じない。
=> 東大の友人は3時間くらい(爆笑)、楽天技術研究所の同僚も20時間くらい。
Haskellとかとそんなに遜色ないよとのこと。
・・・本当だろうか(笑)
面白いセッションでした。