这是一首古老的歌曲:如果工具运行时间太长,那么在早期运行一个不太准确的版本,并在最后使用准确的版本。
换句话说,速度是以准确性为代价的。
所以我不得不说,当亚特兰大声称他们的新快速Lint没有牺牲任何准确性时,我有点困惑和怀疑。与他们的Mike Gianfagna谈话后,情况有所好转。
你看,亚特兰大说他们靠望远镜的精确度生存和呼吸。他们说,他们的客户提到的设计是“望远镜式的干净”。有了这样的品牌价值,准确性可能是他们最不愿意放弃的东西。当我提出他们必须放弃准确性时,你几乎可以听到他们争先恐后地解释。
事情是这样的。他们有自己的普通版本的Spyglass,实际上在罩下进行合成,以发现客户的合成工具可能不喜欢的东西。他们称之为结构绒布。当然,合成需要时间。
然后他们发布了Advanced Lint,将正式的证明添加到要检查的东西的集合中。这并不能提高他们之前检查内容的准确性;它增加了一个全新的检查列表。但是形式分析需要更多的时间。
他们开始得到反馈说,设计师真的不能经常检查他们的设计,因为它花了太长时间。
他们发现,他们可以把他们拥有的大约5000条规则组织起来。第一类可以快速运行,因为它们不需要任何综合。他们把这些组合在一起成为快速Lint。然后是结构绒布部分,进行合成但不正式;然后是高级棉绒,它可以完成整个过程。
当然,他们随后调整了界面以反映这种新结构。
因此,Fast Lint的目的是运行每次设计签入。实际上,您可以编写脚本,以便在签入时自动完成,如果签入失败,则可以拒绝签入。结构绒毛可以在较低频率的基础上进行,以进行更彻底的检查。如果没有其他时间,高级棉可以做签字。但可能在那之前:如果你准备好签字,最好是干净的。
所以没有一个测试会失去准确性;这只是何时运行哪些测试的问题。
你可以在他们的释放...