Lint (software) o que é?

Lint, ou um linter, é uma ferramenta de análise estática de código usada para sinalizar erros de programação, bugs, erros de estilo e construções suspeitas. O termo se origina de um utilitário Unix que examinou o código-fonte da linguagem C.

Visão geral

A análise realizada por ferramentas do tipo lint também pode ser realizada por um compilador otimizador, que visa gerar código mais rápido. Em seu artigo original de 1978, Johnson abordou essa questão, concluindo que "a noção geral de ter dois programas é boa" porque eles se concentram em coisas diferentes, permitindo assim que o programador "se concentre em um estágio do processo de programação apenas no algoritmos, estruturas de dados e correção do programa, e depois retrofit, com a ajuda de lint, as propriedades desejáveis ​​de universalidade e portabilidade".

Embora os compiladores modernos tenham evoluído para incluir muitas das funções históricas do lint, ferramentas semelhantes a lint também evoluíram para detectar uma variedade ainda maior de construções suspeitas. Isso inclui "avisos sobre erros de sintaxe, uso de variáveis ​​não declaradas, chamadas para funções obsoletas, convenções de espaçamento e formatação, uso indevido de escopo, falhas implícitas em instruções switch, cabeçalhos de licença ausentes, [e]... recursos de linguagem perigosos".

Ferramentas semelhantes a lint são especialmente úteis para linguagens tipadas dinamicamente como JavaScript e Python. Como os compiladores de tais linguagens normalmente não impõem tantas regras estritas antes da execução, as ferramentas linter também podem ser usadas como depuradores simples para encontrar erros comuns (por exemplo, discrepâncias sintáticas), bem como erros difíceis de encontrar, como heisenbugs (chamando a atenção para códigos suspeitos como "possíveis erros"). As ferramentas do tipo Lint geralmente realizam análises estáticas do código-fonte.

Ferramentas semelhantes a lint também foram desenvolvidas para outros aspectos da linguagem, incluindo gramática e guias de estilo.

História

Stephen C. Johnson, um cientista da computação do Bell Labs, criou o lint em 1978 enquanto depurava a gramática yacc que estava escrevendo para C e lidava com problemas de portabilidade decorrentes da portabilidade do Unix para uma máquina de 32 bits. O termo "lint" foi derivado de lint, o nome para os pequenos pedaços de fibra e penugem que as roupas soltam, já que o comando deve agir como uma armadilha de fiapos em uma secadora de roupas, detectando pequenos erros com grande efeito. Em 1979, o lint foi usado fora do Bell Labs pela primeira vez, na sétima versão (V7) do Unix.

Ao longo dos anos, diferentes versões do lint foram desenvolvidas para muitos compiladores C e C++ e, embora os compiladores modernos tenham funções semelhantes a lint, as ferramentas semelhantes a lint também aprimoraram seus recursos. Por exemplo, o PC-Lint da Gimpel, lançado em 1985 e usado para analisar o código-fonte C++, ainda está à venda.

Comentários

Postagens mais visitadas deste blog

Alan Wake 2: Como acariciar o prefeito Setter (troféu / conquista das coisas boas da vida)

FXAA vs MSAA: o que é melhor para jogos?

Como executar o Windows 11 no Mac M1/M2/M3 gratuitamente