Live data from Hacker News

Vera: a programming language designed for machines to write

github.com

61–70 of 105 posts

Re: Vera: a programming language designed for machines to write

#61

Earlier quoted context omitted.

Great! Explain it to us while I read to my kid!

Don't get mad because you're too lazy to even ask the AI. You are first to be replaced in the workforce. Or maybe it's over your head and you should just stick to reading children's fiction after all. Want some colouring books too?

Yes! We can always use more books and toys here!

Re: Vera: a programming language designed for machines to write

#63
post #48

> The empirical literature shows that models are particularly vulnerable to naming-related errors like choosing misleading names, reusing names incorrectly, and losing track of which name refers to which value. I think Vera might be missing something here. In my experience, LLMs code better the less of a mental model you need, vs the more is in text on the page. Go – very little hidden, everything in text on the page…

My Spidey sense was tingling when I saw that, too. An additional issue is how humans are supposed to read the code at all so that they can provide help to the LLM if it’s off track. If the code is only usable by models, the models need to be good enough to deal with binary feedback (“Code doesn’t work.”). The human won’t be able to read the code and steer the model. Given the levels of steering required today, that m…

I guess the point is that there is no need for humans to read the code.

How often do you read assembly to check what your compiler is doing?

There is a niche of people doing it when they have special constraints, but that's a tiny niche.

Re: Vera: a programming language designed for machines to write

#64
> The evidence suggests the biggest problem models face isn't syntax

So then why is the first mentioned and most obvious difference from other languages

> There are no variable names. @Int.0 is the most recent Int binding

LLMs are trained on code written by humans. They are most “familiar” with popular programming languages, have large datasets of examples and idioms to draw on. I don’t see the advantage of inventing a new language the machine must “learn” with syntax unlike anything it’s been trained on.

Validation and testing are also already things we do with human written code, too.

Re: Vera: a programming language designed for machines to write

#66

> The empirical literature shows that models are particularly vulnerable to naming-related errors like choosing misleading names, reusing names incorrectly, and losing track of which name refers to which value. I think Vera might be missing something here. In my experience, LLMs code better the less of a mental model you need, vs the more is in text on the page. Go – very little hidden, everything in text on the page…

I've found Claude Code to be amazing at Elm, so your comment about Haskell seems strange to me.

Re: Vera: a programming language designed for machines to write

#67

> The evidence suggests the biggest problem models face isn't syntax So then why is the first mentioned and most obvious difference from other languages > There are no variable names. @Int.0 is the most recent Int binding LLMs are trained on code written by humans. They are most “familiar” with popular programming languages, have large datasets of examples and idioms to draw on. I don’t see the advantage of inventing…

Plus LLMs need semantics just like humans do. Maybe more. Removing variable names seems utter madness.

Re: Vera: a programming language designed for machines to write

#68
post #48

Earlier quoted context omitted.

My Spidey sense was tingling when I saw that, too. An additional issue is how humans are supposed to read the code at all so that they can provide help to the LLM if it’s off track. If the code is only usable by models, the models need to be good enough to deal with binary feedback (“Code doesn’t work.”). The human won’t be able to read the code and steer the model. Given the levels of steering required today, that m…

I guess the point is that there is no need for humans to read the code. How often do you read assembly to check what your compiler is doing? There is a niche of people doing it when they have special constraints, but that's a tiny niche.

> How often do you read assembly to check what your compiler is doing?

The difference is my compiler is more-or-less deterministic, and tends to do exactly what the specification provided to it (the source code) says. LLMs do not currently fulfil either of those criteria

Re: Vera: a programming language designed for machines to write

#69

> There are no variable names. @Int.0 is the most recent Int binding; @Int.1 is the one before. You already lost me here. There's a reason variable names are a thing in programming, and that's to semantically convey meaning. This matters no matter whether a human is writing the code or a LLM.

> You already lost me here. Agreed. I'm working on a language designed for machines to write and humans to understand and review. It doesn't seem worthwhile to have code nobody can understand.

[dead]

Re: Vera: a programming language designed for machines to write

#70
> Every function is a specification that the compiler can verify against its implementation.

This has been tried so many times already. It works nice for functions that only do some arithmetic. But in any real life system that pushes data around over the network or to databases, most things will happen inside effects which leaves the compiler clueless as to whether the function implementation does what it's supposed to do or not.

Don't get me wrong, I'm a big fan of using the compiler to improve productivity and I also believe strong typing leverages LLM power. But this kind of function specification is a dead end IMO.

Post reply on HN