有ruby2ruby编译器,可以从AST恢复ruby代码。
我很好奇,如果我用jrubyc编译我的代码,那么能够在我正在运行的应用程序中评估自己的代码的人是否可以获得我自己的ruby类的AST然后用ruby2ruby恢复ruby代码?
我在ruby 1.8兼容模式下使用jruby 1.6.5。
答案 0 :(得分:0)
尽管我从this page可以看出,AST确实以某种形式存在于已编译的类文件中,因此它至少在理论上可由在同一JVM实例中运行的不可信代码恢复。实际上,Java反编译器可能无论如何都会产生类似的结果。