Last Week in Pony - October 15, 2023
Items of Note
Pony 0.57.0 was released this past week. It fixes a flaw in the implementation of the type system. Versions prior to 0.57.0 allow for unsafe data handling with
recover blocks. We advise updating as soon as possible.
Pony Development Sync
Audio from the October 10th, 2023 sync is available.
Community Resource Highlight
We like to take a moment in each Last Week in Pony to highlight a community resource. There are many community resources that can go unappreciated until just the right time when someone hops into the Ponylang Zulip asking a question or facing a problem we have all had at one time or another. Well here in Last Week in Pony, we make it just the right time to highlight one of our excellent community resources.
It is always a sweet week in Pony when there is a compiler release so this week let us look at something equally as sweet: sugar!
On the Tutorial page for syntactic sugar, we cover
update sugar. The first three are interrelated and as such can be confused for one another with relative ease. Given we have a type
Foo, the create sugar is when this type is bare at the value level,
var foo = Foo becomes
var foo = Foo.create(). The apply sugar is when we already have an instance of this type (i.e.,
var foo = Foo) and we then call the object directly,
foo.apply(). We can combine these together for create-apply,
var foo = Foo() becomes
var foo = Foo.create().apply() – this can only be used when
Foo.create() takes no arguments as any arguments given here are passed to
apply. Lastly, we have update sugar where an expression such as
foo(37) = x becomes
foo.update(37 where value = x) – by defining an update method that takes an argument named
value this sugar can be used on a type you define.
Last Week In Pony is a weekly blog post to catch you up on the latest news for the Pony programming language. To learn more about Pony, check out our website, our Twitter account @ponylang, or our Zulip community.
Got something you think should be featured? There’s a GitHub issue for that! Add a comment to the open “Last Week in Pony” issue.
Interested in making a change, or keeping up with changes to Pony? Check out the RFC repo. Contributors welcome!