Difftastic é uma ferramenta para destacar diferenças entre arquivos de código fonte de uma maneira que reconhece a sintaxe. Isso é bem diferente de ferramentas de comparação textual, como o venerável comando Unix diff
. Por exemplo, o Difftastic ignora novas linhas inseridas para quebrar instruções longas em linguagens como Java ou TypeScript que são delimitadas por ponto e vírgula. A ferramenta destaca apenas as alterações que impactam a sintaxe do programa. Ela faz isso primeiro analisando os arquivos em árvores de sintaxe abstratas e, em seguida, calculando a distância entre eles usando o algoritmo de Dijkstra. Descobrimos que Difftastic é particularmente útil para entender as alterações ao revisar grandes quantidades de código fonte. Difftastic pode ser usado em qualquer linguagem de programação para a qual um analisador esteja disponível e, nativamente, suporta mais de 50 linguagens de programação, bem como formatos de texto estruturados como CSS e HTML. Essa não é uma ferramenta nova, mas achamos que valeria a pena chamar a atenção na era dos assistentes de codificação LLM, onde revisões humanas de código fonte cada vez maiores são gradualmente mais críticas.