4 ms·
For anyone wondering "Why Pony?" - they have a section called just that: https://www.ponylang.io/discover/#why-pony https://www.ponylang.io/discover/#why-pony
by sbarre 6y ago
For anyone wondering "Why Pony?" - they have a section called just that:
https://www.ponylang.io/discover/#why-pony https://www.ponylang.io/discover/#why-pony
- deleted 6y ago[deleted]
- Someone 6y agoThat didn’t answer the question I expected it to answer (“why Pony and not Brando, Gielgud, Nicholson, Streep…?”
- karmakaze 6y agoYou might be looking for "An Early History of Pony"[0] linked in the FAQ. [0] https://www.ponylang.io/blog/2017/05/an-early-history-of-pony/ https://www.ponylang.io/blog/2017/05/an-early-history-of-pon...
- inetsee 6y agoI am confused. Doing a search for "(Brando, Gielgud, Nicholson, Streep) programming language" turns up nothing.
- throwaway744678 6y agoI believe OP tried a joke, by naming famous actors - Pony being an actor programming language.
- Supermancho 6y agoThere still isn't anything there that Erlang doesn't already have, excepting the theoretically-strong reference capabilities...which is what got me watching pony for a couple years. Pony needs to have something that shows how it's references are more/differently useful in a multi-actor program. I suspect that's a tall order.
- ergl 6y agoOne thing that reference capabilities allow you to do is pass data between actors without copying. Erlang is very eager in copying almost everything you put in a message to a process (with the expection of big binaries, etc). Whether this is has a big impact on running systems remains to be seen, Erlang is very good at quickly collecting data. Another thing that I would say Pony has that Erlang doesn't is an easy FFI mechanism. You can write NIFs for Erlang, but in my experience writing native code or wrapping C libraries has been much easier in Pony.
- dnautics 6y ago> Another thing that I would say Pony has that Erlang doesn't is an easy FFI mechanism (Disclaimer, self-promotion): It doesn't get easier than this: https://hexdocs.pm/zigler/Zig.html https://hexdocs.pm/zigler/Zig.html (I'll be dropping direct c support in there in the next release)
- ergl 6y agoZigler looks interesting! I've given it a look before, would be very nice if it could support Erlang too, but I imagine Elixir macros are doing a lot of work for you. I think the biggest hurdles when writing NIFs are: * Interacting with Erlang terms from C/Rust/Zig. Admittedly both zigler and rustler help in this regard, by wrapping Erlang terms. Pony is able to expose raw pointers and structs to C, which I've felt easier to work with. * Dealing with the Beam's preemptive scheduler. This isn't as big of a problem now with dirty schedulers but still a mismatch compared to normal Erlang code. Pony uses a cooperative scheduler everywhere, so you'll already be used to splitting long tasks in different steps by the time you need to use the FFI, which makes the transition easier.
- dnautics 6y agore: preemptive scheduler: https://www.youtube.com/watch?v=l848TOmI6LI https://www.youtube.com/watch?v=l848TOmI6LI (this is an old api, there is a new api that makes the modes completely interchangeable: https://www.youtube.com/watch?v=kpRK9BC0-I8 https://www.youtube.com/watch?v=kpRK9BC0-I8)