Last Week in Pony - August 23, 2026
Here’s how it is. Back in 2017, we put in a style guide for Pony and without thinking about it, we accidentally encoded a serious footgun into it. Ooops. Shit. It wasn’t noticed until this week when I was working on using pony-lint on the standard library. The style guide’s operator continuation convention (binary operators at start of continuation lines) interacted badly with the parser. Pony has no ; or anything of the sort to end an expression, so to make something like returning a negative number work, the parser treats any - at the beginning of a line as negation, not subtraction. That silently broke Timer.abs for nine years. The convention is reversed and the linter now catches it.
So, what’s the issue? Pony’s syntax is a little clever. The style guide said put binary operators at the start of continuation lines. And oops, ya, that put you right into “incorrect.”
Odds are, this isn’t an issue for you. In all the ponylang organization code, I found exactly one instance of this as a problem. But it is still a footgun that was lurking. The style guide has been changed. No longer will it be:
a
+ b
for operator continuation. It will now be:
a +
b
because that avoids the footgun. If you are using pony-lint, know that you will get a bunch of new errors because the rule was flipped around. And hey, it’s just another data point in my campaign for “explicit is better than implicit” and my righteous campaign to make everyone realize that “clever” should be an insult.
And in the meantime, while you are reading about the mass of releases that happened this week, listen to the fairly apropos Effity Eff. Read quick though, it’s a damn short song.