论坛首页 编程语言技术论坛

Ruby函数式风格编程

浏览 21730 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-02-14  
对,真实的代码不是这样子,是用类似
conds = group.split(//).inject({:pre => "", :sub => []}) do |conds, g|
          ## do real things
        end

实现的。上面的例子主要为了可读性,并提醒注意else一定要返回cond,否则就会变成nil

关于inject,我想另外拿一个例子与erlang的来作对比。
0 请登录后投票
   发表时间:2007-02-19  
ruby是有很多fp的特性,不过要注意一点:ruby是没有尾递归优化的,所以能用循环或map,filter之类的就用它们,尽量避免用递归。
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics