{"type":"rich","width":"100%","title":"n\u4eba\u76ee\u306e\u6240\u696d\u3060\u304cRuby\u3067Maybe monad (Option monad) \u3092\u4f5c\u3063\u305f","description":"n\u4eba\u76ee\u306e\u6240\u696d\u3060\u304cRuby\u3067Maybe monad (Option monad) \u3092\u4f5c\u3063\u305f\u3002\u5f53\u305f\u308a\u524d\u3060\u304c\u5b9f\u7528\u3067\u306f\u306a\u3044 (\u8981\u3089\u306a\u3044)\u3002 List monad\u3092\u4f5c\u308b\u306e\u306f\u8f9b\u3055\u3046\u3068\u4e91\u3075\u4e08\u306e\u7406\u7531\u3060\u3002Haskell\u3068Scala\u3092\u53c2\u7167\u3057\u305f\u3002 # coding=utf-8 # license: Public Domain # Ruby\u3067curry\u5316\u3057\u306a\u3044\u95a2\u6570\u5408\u6210 http://c4se.hatenablog.com/entry/2014/07/27/140057 def compose *fs; proc{|*args| fs.inject(args){|args, f| f.call *args } }; e\u2026","blog_title":"c4se\u8a18\uff1a\u3055\u3063\u3061\u3083\u3093\u3067\u3059\u3088\u2606","published":"2014-07-28 03:47:52","blog_url":"https://c4se.hatenablog.com/","version":"1.0","url":"https://c4se.hatenablog.com/entry/2014/07/28/034752","categories":["Programming","Ruby"],"provider_url":"https://hatena.blog","image_url":null,"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fc4se.hatenablog.com%2Fentry%2F2014%2F07%2F28%2F034752\" title=\"n\u4eba\u76ee\u306e\u6240\u696d\u3060\u304cRuby\u3067Maybe monad (Option monad) \u3092\u4f5c\u3063\u305f - c4se\u8a18\uff1a\u3055\u3063\u3061\u3083\u3093\u3067\u3059\u3088\u2606\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","height":"190","provider_name":"Hatena Blog","author_name":"Kureduki_Maari","author_url":"https://blog.hatena.ne.jp/Kureduki_Maari/"}