Why Natural Language Will Shape the Future of Programming

Marc Brooker argues programming will rely on natural-language specs and iterative conversation, with LLMs helping refine intent. Formal methods still matter for safety; neurosymbolic checks link clarity to verification.

Why Natural Language Will Shape the Future of Programming

TL;DR

  • Natural language as the core of future programming: Spec-first work where intent and conversation drive implementation as many details are abstracted.
  • Ambiguity not fatal; teams resolve fuzzy requirements via context, experience, and iterative clarification.
  • Conversational loop as the programming model: Iterative dialogue (vibe coding, spec-driven development) with LLMs participating to refine requirements, tests, and examples.
  • Precision tools still required for safety, compliance, and security; symbolic formalisms (Rust, TLA+, SMT) act as complements.
  • Neurosymbolic middle path: LLM-driven understanding plus symbolic checks, automated test generation, and human policy review to surface inconsistencies and produce verifiable artifacts.
  • Essay: On the success of ‘natural language programming’ — Marc Brooker

Marc Brooker on why natural language will shape programming's future

Marc Brooker, an AWS engineer with a background in databases and serverless systems, lays out a practical case for natural language as the core of future programming. The argument reframes modern software work as specification-first: implementation details are increasingly abstracted away, while conversations about intent drive development. That shift makes natural language not a flaw to be eliminated but a practical interface to systems.

The ambiguity objection — and why it isn't fatal

Natural language is inherently ambiguous, and historical critiques from figures like Lamport and Dijkstra remain relevant. Yet Brooker points out that most software already begins life as fuzzy, conversational requirements. Teams routinely resolve ambiguity through context, experience, and iterative clarification. In practice, those feedback loops are already central to how software is built.

The conversational loop as the programming model

Brooker highlights workflows such as vibe coding and spec-driven development as formalizations of the same pattern: an iterative dialogue that refines a specification through repeated interactions. LLMs expand the loop by participating directly in conversations about requirements, tests, and examples. This loop — not a single-shot translation from prose to code — is the crucial element in moving from ambiguity to actionable specification.

Where formal tools still matter

Precision remains essential for safety-critical systems, compliance, and security. Brooker argues that symbolic tools (Rust, TLA+, SMT-style formalisms) stay in the toolbox and should be invoked when the loop uncovers risks or hard correctness properties. These tools are complements rather than competitors to natural-language-centered workflows.

A neurosymbolic middle path

A promising direction is neurosymbolic systems: combining LLM-driven natural language understanding with internal symbolic checks, automated test generation, and explicit human review of formalized policies. That hybrid approach can surface inconsistencies, prompt clarification, and produce verifiable representations when necessary.

The piece presents the future of programming as an extension of long-standing practice: a dialogue that accumulates context, occasionally descending into formal methods when precision demands it.

Read the original essay for the full discussion and examples: On the success of ‘natural language programming’ — Marc Brooker

Continue the conversation on Slack

Did this article spark your interest? Join our community of experts and enthusiasts to dive deeper, ask questions, and share your ideas.

Join our community