function编程风格与Ruby中的性能

我喜欢函数式编程,我也喜欢Ruby。 如果我能够以function样式而不是命令式样式编写算法,我会这样做。 我倾向于不尽可能地更新或重用变量,避免使用“爆炸!” 方法和使用“map”,“reduce”和类似的函数而不是“each”或危险循环等。基本上我尝试遵循本文的规则。

问题是通常function性解决方案命令式解决方案慢得多 。 在这篇文章中有一些清晰而可怕的例子,在某些情况下要慢15-20倍。 阅读它并做一些基准后,我害怕继续使用function样式,至少在Ruby中。

另一方面,我觉得在函数风格中编写代码更舒服,因为它是智能和干净的,它往往更少的错误,我认为更“正确”,特别是现在我们可以使用并发和并行来获得更好的性能。

所以我对Ruby中使用哪种样式感到很困惑。 任何明智的建议将不胜感激。