Slide 1

Slide 1 text

Why Pony? Bleeding edge technology for your concurrency woes

Slide 2

Slide 2 text

Sean T Allen Author of Storm Applied Member of the Pony core team VP of Engineering at Sendence

Slide 3

Slide 3 text

Pony Open-source, object-oriented, actor-model, capabilities- secure, high-performance programming language

Slide 4

Slide 4 text

-Sylvan Clebsch “ A programming language is just another tool. It’s not about syntax. It’s not about expressiveness. It’s not about paradigms or models. It’s about managing hard problems.”

Slide 5

Slide 5 text

Why Pony?

Slide 6

Slide 6 text

Why Pony? Highly Concurrent Predictable latencies Data Safety

Slide 7

Slide 7 text

Highly Concurrent

Slide 8

Slide 8 text

Highly Concurrent Actor model Async messaging Work stealing scheduler Mechanical sympathy

Slide 9

Slide 9 text

Predictable latencies

Slide 10

Slide 10 text

Predictable Latencies No “stop the world” GC Per-actor heaps Better clustering

Slide 11

Slide 11 text

Data Safety

Slide 12

Slide 12 text

Data Safety Reference Capabilities

Slide 13

Slide 13 text

Why Not Pony?

Slide 14

Slide 14 text

Why Not Pony? Concurrency isn’t your problem Lack of API Stability “Batteries Not Included” Limited Native Tooling

Slide 15

Slide 15 text

Is Pony right for you?

Slide 16

Slide 16 text

Is Pony right for you? You have a hard concurrency problem You aren’t reliant on a lot of existing libraries You are willing to write “most everything” from scratch Yes, if…

Slide 17

Slide 17 text

Takeaways… Pony has a powerful, data-race free, concurrency-aware type system The Pony runtime can help you solve hard concurrency problems You might be able to use Pony in production now

Slide 18

Slide 18 text

Trash Day paper: https://www.usenix.org/system/files/conference/hotos15/ hotos15-paper-maas.pdf ORCA paper: https://www.ponylang.org/media/papers/OGC.pdf

Slide 19

Slide 19 text

@seantallen www.monkeysnatchbanana.com @SendenceEng www.sendence.com @ponylang www.ponylang.org #ponylang on freenode