我们经常使用&符号来缩短块,如下所示:
some_array.group_by(&:foo)
Run Code Online (Sandbox Code Playgroud)
是否有类似的缩短表达式的方法{|x| x}?
some_array.group_by{|x| x}
Run Code Online (Sandbox Code Playgroud)
如果有一种方法Object#self可以返回self,那么我们就可以做到
some_array.group_by(&:self)
Run Code Online (Sandbox Code Playgroud)
但不幸的是,没有这样的方法.就字符数而言,它可能更长,但可读性提高.
我目前正在编写一个 Ruby 类,它提供了一个基本 lambdas 的菜单,可以混合和匹配来创建一组新的 lambdas。(这是一种进化算法,需要根据数据集对适应度函数进行大量定制)
发生这种情况的配置火灾充满了这样的东西
function_from_modifier.(base_function, either.(modifier_from.(case),->(x){x}) )
->(x){x}配置文件中多次弹出identity函数,看起来很丑,所以想知道有没有更优雅的方法。像 Elixir 这样的东西&(&1)在 Ruby 中是可能的吗?