L’analisi eseguita da strumenti simili a lint può essere eseguita anche da un compilatore di ottimizzazione, che mira a generare codice più veloce., Nella sua originale 1978 carta, Johnson affrontato questo problema, concludendo che “la nozione generale di avere due programmi è una buona” perché si sono concentrati su cose diverse, consentendo al programmatore di concentrarsi in una sola fase del processo di programmazione esclusivamente sugli algoritmi, strutture di dati e la correttezza del programma, e poi retrofit, con l’aiuto di un panno, la proprietà desiderabili di universalità e la portabilità”.,
Anche se i compilatori moderni si sono evoluti per includere molte delle funzioni storiche di lint, gli strumenti simili a lint si sono evoluti anche per rilevare una varietà ancora più ampia di costrutti sospetti. Questi includono ” avvertimenti su errori di sintassi, usi di variabili non dichiarate, chiamate a funzioni deprecate, convenzioni di spaziatura e formattazione, uso improprio dell’ambito, fallthrough implicito nelle istruzioni switch, intestazioni di licenza mancanti,…caratteristiche linguistiche pericolose”.
Gli strumenti simili a lanugine sono particolarmente utili per linguaggi tipizzati dinamicamente come JavaScript e Python., Poiché i compilatori di tali linguaggi in genere non applicano tutte le regole rigorose prima dell’esecuzione, gli strumenti linter possono anche essere utilizzati come semplici debugger per trovare errori comuni (ad esempio discrepanze sintattiche) e errori difficili da trovare come heisenbugs (attirando l’attenzione sul codice sospetto come “possibili errori”). Gli strumenti simili a lanugine generalmente eseguono l’analisi statica del codice sorgente.
Strumenti simili a lanugine sono stati sviluppati anche per altri aspetti del linguaggio, tra cui grammatica e guide di stile.