
Using Pony for Fintech [video] - pjmlp
https://www.infoq.com/presentations/pony?utm_source=infoq&utm_medium=videos_homepage&utm_campaign=videos_row1
======
plainOldText
Based on the features presented in the talk, Pony looks like a great language:

    
    
      * Actor-model 
      * Concurrency-aware type system
      * Zero-copy message queues
      * Work-stealing topology-aware scheduling
      * Fully concurrent GC with no stop the world
    

Since there's no such thing as a perfect language for all problems, I wonder
what's "the catch" with this language - besides the obvious "not enough
libraries yet"?

~~~
doublec
I use Pony a bit, and wrote some things here:
[https://bluishcoder.co.nz/tags/pony/](https://bluishcoder.co.nz/tags/pony/)

My list of catches would be:

* Reference capabilities take a while to grasp. No more than Rust's borrowing or ATS viewtypes though.

* Garbage collection occurs between behaviour calls only. If you do something in a loop that allocates a lot in a single behaviour then you'll get memory issues.

* There's no blocking calls. You need to structure your code so that actors receive notifications of things occurring instead.

* Behaviours don't return anything as they are asynchronous. This requires using promises or passing callbacks.

That said, once you grasp these it's nice to program in. Fast, readable, and
makes concurrent/parallel code easy to write and safe to pass data around. The
C FFI is easy to use. You can package Pony code as a library callable from C
too.

------
NeutronBoy
Awesome talk - I'm about halfway through and a bunch of it is going over my
head, but the presentation is spot on - the presenter is clear, passionate,
not reading directly from his slides, and you can tell that he absolutely
knows and is confident in his understanding of the content.

------
eggy
I am looking into Pony to compare using it vs. Erlang/LFE/Elixir and even
Rust.

Erlang grew out of a need to program telecom switches for Ericsson, but it
seems Pony was designed with the various industries the author was involved in
- fintech, milsims, video games, and others for 24 years. I like that it has
real world roots, and has a proven type system.

I have heard good things about it, and it can run on Android, Raspberry Pi,
and other small platforms too.

