
Pony: High-Performance, Memory-Safe Actors (with Sean Allen)
About this episode
Pony is a language born out of what should be a simple need - actor-style programming with C performance. On the face of it, that shouldn’t be too hard to do. Writing an actor framework isn’t trivial, but it’s well-trodden ground. The hard part is balancing performance and memory management. When your actors start passing hundreds of thousands of complex messages around, either you need some complex rules about who owns and frees which piece of memory, or you just copy every piece of data and kill your performance. Pony’s solution is a third way - a novel approach to memory management called reference capabilities.
In this week’s Developer Voices, Sean Allen joins us from the Pony team to explain what reference capabilities are, how Pony uses them in its high-performance actor framework, and how they implement a garbage collector without stop-the-world pauses. The result is a language for performant actors, and a set of ideas bigger than the language itself…
–
Pony: https://www.ponylang.io/
The Pony Tutorial: https://tutorial.ponylang.io/
The Pony Playground: https://playground.ponylang.io/
Azul Garbage Collector: https://www.azul.com/products/components/pgc/
Shenandoah Garbage Collector: https://wiki.openjdk.org/display/shenandoah/Main
A String of Ponies (Distributed Actors Paper): https://www.doc.ic.ac.uk/~scb12/publications/s.blessing.pdf
Garbage Collection with Pony-ORCA: https://tutorial.ponylang.io/appendices/garbage-collection.html
–
Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices
Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join
Kris on Mastodon: http://mastodon.social/@krisajenkins
Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/
Kris on Twitter: https://twitter.com/krisajenkins
Get every episode summarized
Each time Developer Voices publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.
Email me new episodesFree for 3 shows. No card needed.
Hosts & guests
No transcript yet
This episode has not been transcribed. Request it and it moves to the front of the queue.
More episodes
More from Developer Voices

DuckDB And The Burden of Success (with Hannes Mühleisen)
Developer Voices

The Enterprise AI Gap (with James Brown)
Developer Voices

What If Every SQL Query Could Update Incrementally? (with Lalith Suresh)
Developer Voices

What's Worth Knowing In AI Right Now? (with Henry Garner)
Developer Voices
