Ruby - ppp.rb是什么?

3
这个答案中,我了解到了ppp.rb。它被提到是“众所周知的”,但在谷歌上找不到任何相关信息。
我觉得它很有趣,于是我改编了它,构建了我的caller_binding版本
但是,为了增加我的知识,什么是ppp.rb?“ppp”代表什么?在哪里可以找到相关信息?

公平地说,楼主以一种相当随意的方式描述了它是“众所周知的”。我现在已经使用Ruby 5年了,从未听说过它,Google除了这个问题什么也没有。 - Chris Mowforth
2个回答

7

1
从作者的页面翻译来看,PPP代表“强大的p”。我已经从作者的页面下载了ppp-1.0.0.tar.gz并阅读了源代码,它需要使用标准库中的pppp是PrettyPrint。因此,PPP是指“强大的PrettyPrint”。 - Sony Santos
曾经它在日本很受欢迎! - Andrew Grimm

1

抱歉让您感到困惑,但是它在当时因其黑客价值而非常出名。其中一个原因是因为原作者是核心Ruby黑客 - 因此那个时候跟踪主要的Ruby黑客博客的人都知道它。

唯一的问题是它依赖于Ruby的漏洞(不确定是哪一个),所以一旦漏洞被修复,它很快就消失了。难怪最近的Ruby程序员从未听说过它。

我的版本不依赖于漏洞,但由于Ruby中的不同漏洞(#4347 - 我认为这已经在1.9.3中得到解决),因此与1.9.[012]存在问题。因此,原始版本之所以有效是因为Ruby存在漏洞,而新版本则因此无效:-)


谢谢你的写作!那是一个有趣的故事。 :) - Sony Santos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接