Lint (programming tool)

from Wikipedia, the free encyclopedia

Lint ( English for " lint ") is software for static code analysis . Derived from this, the verb linten (English to lint ) has established itself for performing static code analysis.

history

Lint was the first of a series of tools for static code analysis of the source code of computer programs. Its main purpose was to compensate for the weaknesses of the then existing compilers . These require correct source code for a large part and only carried out rudimentary tests. In addition to tracking down dangerous constructs, such as uninitialized variables, Lint also placed great emphasis on checking a uniform layout of the source code and on recognizing non-portable constructs such as dependencies on the operating system or the compiler.

Originally developed by Bell Labs for the C programming language , Lint was released in 1979 with the seventh version (V7) of the Unix operating system as part of the Portable C Compiler . This was the second compiler for this system after the PDP-11 compiler. The differences between System V and BSD are particularly clear with Lint.

A port of Lint for use on the PC was offered as early as 1985 and has been advertised as a software product since then.

development

Many of the checks Lint performed have been incorporated into today's compilers with advances in compiler design . These now generate highly optimized code , whereby they also have to carry out much more extensive static analyzes.

Some checks have become obsolete because better standardization of the programming languages ​​means that certain portability problems no longer exist. By using modern development environments and context-sensitive text editors with syntax highlighting and automatic indentation , the formatting problem has also eased somewhat.

With the emergence and spread of C ++ , attempts were made to extend Lint to include tests specifically for the new language constructs. However, Lint has lost the unique selling point of the first few years. A number of sometimes much more sophisticated tools for static code analysis are available on the market today. Regardless of this, Lint is particularly suitable for distributed projects due to its small size, high stability, wide configurability and cross-platform availability. Source code is contributed by different developers, which should nevertheless meet uniform quality criteria. This is the only way to automatically execute creation runs or to create documentation.

designation

The name Lint is derived from the English term for unwanted portions of fibers and fluff in sheep's wool .

Derived name uses

Individual evidence

  1. Helmut Weber: Practical system programming. Basics and implementation under UNIX and related systems. Vieweg, Braunschweig et al. 1998, ISBN 3-528-05658-4 , online at Google .
  2. Celebrating 30 Years of PC-lint.
  3. Android Tools Project Site. Lint.
  4. Android Tools Project Site. Android Lint.

literature

  • Stephen C. Johnson: Lint, a C program checker (= Computer Science Technical Report. No. 65, ISSN  1053-864X ). Bell Laboratories, Murray Hill NJ 1977.
  • Ian F. Darwin: Checking C Programs with Lint. O'Reilly, Newton MA et al. 1988, ISBN 0-937175-30-7 .

Web links