小编ams*_*dam的帖子

什么是Ruby代码的"太聪明"的例子?

我和一些程序员朋友讨论过,他们说他们看到Ruby程序员(特别是)生成了很多"太聪明"的代码.所以我想知道那会是什么样的?我指的是在一个简单易用的东西中不必要地使用一个模糊的语言特征.知道任何好的Ruby例子吗?

ruby

13
推荐指数
6
解决办法
5695
查看次数

如果这段代码不是一个笑话,它究竟是如何运作的?

class Tree
  def initialize*d;@d,=d;end
  def to_s;@l||@r?",>":@d;end
  def total;(@d.is_a?(Numeric)?@d:0)+(@l?@l.total: 0)+(@r?@r.total: 0);end
  def insert d
    alias g instance_variable_get
    p=lambda{|s,o|d.to_s.send(o,@d.to_s)&&
      (g(s).nil??instance_variable_set(s,Tree.new(d)):g(s).insert(d))}
    @d?p[:@l,:]:@d=d
  end
end
Run Code Online (Sandbox Code Playgroud)

有人愿意尝试解释这是做什么的吗?它似乎是一个问题的答案我问了一些太聪明的代码.但是,对我来说,判断这只是一个笑话太聪明了.如果不是,我有兴趣知道它是如何工作的,如果有人在意解释.

ruby obfuscation

6
推荐指数
4
解决办法
1399
查看次数

标签 统计

ruby ×2

obfuscation ×1