Artwork

Content provided by Kris Jenkins. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Kris Jenkins or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ro.player.fm/legal.
Player FM - Aplicație Podcast
Treceți offline cu aplicația Player FM !

Pony: High-Performance, Memory-Safe Actors (with Sean Allen)

1:13:23
 
Distribuie
 

Manage episode 447845398 series 3476072
Content provided by Kris Jenkins. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Kris Jenkins or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ro.player.fm/legal.

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

  continue reading

73 episoade

Artwork
iconDistribuie
 
Manage episode 447845398 series 3476072
Content provided by Kris Jenkins. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Kris Jenkins or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ro.player.fm/legal.

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

  continue reading

73 episoade

Tất cả các tập

×
 
Loading …

Bun venit la Player FM!

Player FM scanează web-ul pentru podcast-uri de înaltă calitate pentru a vă putea bucura acum. Este cea mai bună aplicație pentru podcast și funcționează pe Android, iPhone și pe web. Înscrieți-vă pentru a sincroniza abonamentele pe toate dispozitivele.

 

Ghid rapid de referință