棉绒(软件)
原始作者 | 斯蒂芬·约翰逊(Stephen C. Johnson) |
---|---|
开发人员 | AT&T Bell实验室 |
初始发行 | 1978年7月26日 |
写在 | C |
作业系统 | 跨平台 |
可用 | 英语 |
类型 | 静态程序分析工具 |
执照 | 最初是专有商业软件,现在是根据BSD式许可证的免费软件 |
Lint是用于标记编程错误,错误,风格错误和可疑构建的静态代码分析工具的计算机科学术语。该术语源自检查C语言源代码的UNIX实用程序。执行此功能的程序也称为“ linter”。
历史
贝尔实验室(Bell Labs)的计算机科学家斯蒂芬·约翰逊(Stephen C. Johnson)在1978年提出了“绒毛”一词,同时调试了他为C撰写的YACC语法,并处理了从移植Unix到32位机器的可移植性问题。这个词是从棉绒一词中藉来的,纤维和绒毛脱落,因为他所写的命令就像在烘干机中的皮棉陷阱一样,捕获了废物纤维,同时使整个面料完好无损。 1979年,在Unix的第七版( V7 )中,首次在Bell Labs外部使用Lint编程。
多年来,许多C和C ++编译器已经开发了不同版本的棉绒,尽管现代编译器具有类似绒毛的功能,但类似绒毛的工具也提高了其功能。例如,Gimpel的PC-LINT于1985年推出,用于分析C ++源代码,仍在出售。
概述
约翰逊(Johnson)在1978年的最初论文中说明了他在创建一个单独的程序来检测错误的理由,与它分析的错误不同:“ ...拥有两个程序的一般概念是一个好的,因为他们专注于不同的事情,因此允许程序员[仅在编程过程的一个阶段集中在程序的算法,数据结构和程序的正确性上,然后借助皮棉(普遍性和便携性的理想特性)进行改造” 。
后继衬里
通过优化的编译器也可以执行像皮革一样的工具进行的分析,该编译器旨在生成更快的代码。即使现代编译器已经演变为包括Lint的许多历史功能,但类似绒毛的工具也发展为检测更广泛的可疑结构。其中包括“有关语法错误的警告,未申报的变量的使用,对弃用功能的呼吁,间距和格式化约定,滥用范围,交换机语句中隐含的下半身,丢失的许可证标头,[和] ...危险的语言特征”。
类似皮棉的工具对于诸如JavaScript和Python等动态键入语言特别有用。因为这种语言的编译器通常不会在执行前执行那么多的规则,因此也可以用作查找常见错误(例如句法差异)以及难以找到的错误(例如HeisenBugs)的简单调试者(将注意力集中在“可能的错误”中)。类似绒毛的工具通常对源代码进行静态分析。
还为软件开发的其他方面开发了类似绒毛的工具:为给定语言源代码执行语法和样式指南。