inversão fundamental: “em programação tradicional, humanos escrevem a implementação e esperam que ela corresponda à intenção. Aqui, humanos escrevem a intenção e o sistema garante que a implementação corresponda — porque a especificação é formal o suficiente para ser verificável, mas de alto nível o suficiente para ser pensada em termos de produto, não de código.
Relacionado aEscrever código significa manifestar as suas intenções por meio de uma linguagem.
Se humanos não escrevem mais código … o que exatamente eles escrevem? A resposta: uma especificação declarativa de intenção. Não é código. Não é pseudocódigo. É uma declaração estruturada do que o sistema deve fazer, quais restrições deve respeitar, e quais garantias deve oferecer. O humano descreve o quê e o porquê. A IA decide o como.
Isso não é linguagem natural livre (ambígua demais) nem uma linguagem de programação (detalhada demais). É algo intermediário: uma DSL de especificação onde o vocabulário é restrito, a estrutura é formal, mas a cognição exigida é de design de produto, não de engenharia de software.
Penso que Quem produz especificações de software?