【发布时间】:2018-01-01 23:51:19
【问题描述】:
问题陈述:
我在多个来源/文章中读到暗示会增加 Scala 编译时间
我想将它们删除/减少到最低限度,看看没有它们的编译时间会是什么样子(代码库大约有 1000 个基于 scalaz & akka & slick 的各种复杂度的文件)
我真的不知道我可以执行什么样的静态分析。对现有工具的任何点赞/引用都非常感谢。
【问题讨论】:
-
除非你更多地导入
implicits,否则你只使用Scala Predef - scala-lang.org/api/2.12.0/scala/Predef$.html 中的这些。您可以通过小心地仅导入所需的隐式来保持它们的低值。 -
@SarveshKumarSingh 根据stackoverflow.com/questions/5598085/… 它比这更复杂。这就是我追求静态代码分析的原因。
-
没有。它不是。如果您不导入任何内容,则您的范围内只会有来自
Scala.Predef._的隐含。除此之外,一些收集方法在本地导入一些implicits,但这些方法将受到方法范围的限制。因此,就您而言,如果您不在 Scope 中导入implicit,您将不会处理它。此外,如果您有一个带有def example(a: A...)(implicit x: X): Y之类签名的函数/def,那么您将需要在您的范围内隐式使用它,或者您将不得不避免使用它。
标签: performance scala compilation static-analysis scalaz