Desde os primórdios da informática, alguns consideraram a formalidade da programação como um defeito, culpando as máquinas por sua estrita obediência às instruções. Eles esperavam máquinas mais 'sensáveis' que rejeitassem atividades nonsensical. Linguagens de alto nível surgiram como uma melhoria, captando muitos erros bobos com mensagens de erro em vez de resultados errôneos. No entanto, a máquina abstrata permaneceu um escravo fiel, perfeitamente capaz de executar instruções nonsensical. A programação continuou a exigir simbolismo formal e o cuidado que demanda.
A proposta de projetar máquinas instruídas em línguas nativas aumentaria muito a carga da máquina, mas os defensores argumentariam que simplificaria a vida humana. Isso supõe que a obrigação de usar simbolismo formal é a fonte da dificuldade. O autor duvida desse argumento, notando que a escolha da interface não é meramente uma divisão do trabalho — o trabalho de comunicação pelas interfaces deve ser adicionado.
A história mostra que os simbolismos formais permitiram o progresso. A matemática grega estagnou na forma verbal, e o mundo moderno surgiu quando a Europa ocidental se libertou da precisão verbal através de formalismos cuidadosamente desenhados por Vieta, Descartes, Leibniz e Boole. Os textos formais requerem apenas regras simples para manipulação legítima, efetivamente excluindo o nonsense que as línguas nativas quase inevitavelmente produzem.
Fonte: Hacker News · Resumido por HeadlinesBriefing