#1 楼 @citysheep 是的,没有最好,只有为不同的应用场景选择最合理 合理 解决方案
#3 楼 @debugtalk 其实 Lisp/Scheme 的语法和一些内置方法不算难,看 SICP 第一节公开课就可以写代码,只是我们早已习惯面向对象的高级语言一下不能适应 写程序像在解数学题或者证明数学公式。
#4 楼 @numbcoder 没看到有新的,我看的就是老的,感觉蛮好的。
@hemengzhi88 尴尬的是我已经工作了
#1 楼 @mozillazg 好吧,有点尴尬
#3 楼 @davidhuangdw 厉害!学到很多东西,谢谢你。
但是我觉得还有两个问题:
(1..10).my_inject(:+)
时,破坏了原数组,这点和Enumerable#inject
相违背。
我的理解可以将to_a.arr_inject(acc, &meth.to_proc)
换成dup.arr_inject(acc, &meth.to_proc)
p (1..2).my_inject(0, :+, &:*) #=> 2
,应该把meth = blk || meth
换成meth = meth || blk
吧?真心喜欢 ThePlant,请问@TingTing明年会招实习生吗?还在在上学。。。