Pony – High-Performance Safe Actor Programming
21–30 of 159 posts
Re: Pony – High-Performance Safe Actor Programming
#22I still am wondering how error handling should be done in pony, it only tells you an error has happend, not what has caused it or what kind of error happend.
A partial function is where you can't compute a result based on the input.
If you need to know what went wrong (because more than one thing might have gone wrong and that needs to be communicated), you can use a union type for the result and match accordingly (as you would in Rust as an example).
Re: Pony – High-Performance Safe Actor Programming
#23I never saw Pony described as high performance. Now I'm interested
Well, in the very first benchmarks it was the fastest of all on multicore machines. Faster than C++ with pstl/openmp. Lockfree/non-blocking stdlib has its advantages. It's also safe, much safer than rust.
Re: Pony – High-Performance Safe Actor Programming
#24For anyone wondering "Why Pony?" - they have a section called just that: https://www.ponylang.io/discover/#why-pony
That didn’t answer the question I expected it to answer (“why Pony and not Brando, Gielgud, Nicholson, Streep…?”
[0] https://www.ponylang.io/blog/2017/05/an-early-history-of-pon...
Re: Pony – High-Performance Safe Actor Programming
#25it's really frustrating seeing these programming languages websites where you have to click in a million place before you can even see what the code looks like
Re: Pony – High-Performance Safe Actor Programming
#26Earlier quoted context omitted.
Well, in the very first benchmarks it was the fastest of all on multicore machines. Faster than C++ with pstl/openmp. Lockfree/non-blocking stdlib has its advantages. It's also safe, much safer than rust.
> It's also safe, much safer than rust. Can you give an example of this? How is Pony "much" safer than Rust?
Given how easy it is to use c-ffi from Pony, it can be hard with existing tooling to feel confident in what your Pony code might do. Once you call out via C-FFI, all safety guarantees are off.
In this way, the c-ffi in Pony is as problematic for reasoning about safety as `unsafe` is in Rust.
Pony allows you to turn off FFI for all packages except for some that you allow but even then, FFI is an end around for the memory safety and capabilities security that the language otherwise provides.
Improving FFI tooling is an ongoing conversation amongst the core team.
Re: Pony – High-Performance Safe Actor Programming
#27it's really frustrating seeing these programming languages websites where you have to click in a million place before you can even see what the code looks like
Is there an a page with more than a few lines of code to show what actual Pony programs look like?
https://github.com/ponylang/ponyc/tree/master/examples
You can find a number of pony library projects under the ponylang org on GitHub:
Re: Pony – High-Performance Safe Actor Programming
#28I still am wondering how error handling should be done in pony, it only tells you an error has happend, not what has caused it or what kind of error happend.
`error` in Pony is for partial functions. A partial function is where you can't compute a result based on the input. If you need to know what went wrong (because more than one thing might have gone wrong and that needs to be communicated), you can use a union type for the result and match accordingly (as you would in Rust as an example).
Re: Pony – High-Performance Safe Actor Programming
#29Earlier quoted context omitted.
Is there an a page with more than a few lines of code to show what actual Pony programs look like?
There are a number of simple examples in the ponyc repo: https://github.com/ponylang/ponyc/tree/master/examples You can find a number of pony library projects under the ponylang org on GitHub: https://github.com/ponylang/
Re: Pony – High-Performance Safe Actor Programming
#30it's really frustrating seeing these programming languages websites where you have to click in a million place before you can even see what the code looks like
Is there an a page with more than a few lines of code to show what actual Pony programs look like?