
Ruby的开放类──或者:怎样避免动态打补丁
Ruby的开放类(Open Classes)功能强大,但很容易被误用。这篇文章关注于怎样减少使用开放类的风险,介绍了一些其他可替代的类似方法,并分析了其他语言如何实现类似的功能。

Ruby的开放类(Open Classes)功能强大,但很容易被误用。这篇文章关注于怎样减少使用开放类的风险,介绍了一些其他可替代的类似方法,并分析了其他语言如何实现类似的功能。
Sun Hotspot VM的开发者John Rose宣布其首次可以在OpenJDK VM上成功执行“invokedynamic”指令。对于使用JVM的动态语言来说,动态调用是个重要特性。
.NET平台上缺少许多基础功能。例如,它没有内置读取CSV文件,复制目录,或者操作zip文件的方法。当然,事实上.NET提供了这些类库,不过您必须深入挖掘才能发现它们。
虽然JRuby的性能在不断提升,但是有些算法如果用Java实现的话还是会更快一些。我们在寻求不同的方式来解决这个问题,比如:RubyInline for JRuby、利用JRuby DSL产生字节码以及Ruby的一个新的子集——Duby。