upvote
> I could see a world in which we're all just writing tests in the form of something like Gherkin though.

That works great in practice, Gherkin even has a markdown dialect [1].

If you combine it with a tool like aico [2] you can have a really effective development workflow.

[1] https://github.com/cucumber/gherkin/blob/main/MARKDOWN_WITH_...

[2] https://github.com/jurriaan/aico

reply
People seem weirdly eager to talk to LLMs in proto-code instead of fixing the base problem that LLMs are just unreliable interpreters. If your tool needs a new human-friendly DSL to avoid the ambiguity of plain English, maybe what you really want is to be writing actual code or specs with a type system and feedback loop. Any halfway formalism gives a false sense of precision, and you still get blindsided by the same model quirks, just dressed up differently.
reply
> I could see a world in which we're all just writing tests in the form of something like Gherkin though.

Yes, and the implementation... no one actually cares about that. This would be a good outcome in my view. What I see is people letting LLMs "fill in the tests", whereas I'd rather tests be the only thing humans write.

reply
> Yes, and the implementation... no one actually cares about that.

There has been a profession in place for many decades that specifically addresses that...Software Engineering.

reply
While I'm also a bit skeptical, I think some formalism could really simplify everything. The programming world has lots of words that mean close to the same thing (subroutine, method, function, etc. ). Why not choose one and stick to it for interactions with the LLM? It should save plenty of complexity.
reply