3 ms·
Actors are a first class feature of Pony Lang[1], which features reference capabilities as it's method of guaranteeing thread safety at compile time. "Refcap"s
by pull_my_finger 4y ago
Actors are a first class feature of Pony Lang[1], which features reference capabilities as it's method of guaranteeing thread safety at compile time. "Refcap"s have a bit of a learning curve but otherwise the language is syntactically a real pleasure to use.
While learning, I worked through Practical Object Oriented Design in Ruby but doing the examples in Pony. It really highlights some of the short-comings of Ruby, that are implemented better in Pony. Off the top of my head: Pony has named arguments, default arguments, real interfaces (no need for "duck-types"), it's strongly typed... There are probably more but those are a few I noticed specifically in a book that could otherwise stand as promotional material for Ruby.
Definitely recommend anyone interested in OO, or the Actor Model to check it out.
[1]: https://www.ponylang.io/discover/#what-is-pony https://www.ponylang.io/discover/#what-is-pony
- Mikeb85 4y agoI mean, the main shortcoming of Ruby is that it was designed 25 years ago and is being used for far more than it was designed for... Pony is a great language though. And yes it has an amazing concurrency and parallelism model and showcases the actor model very nicely.
- pull_my_finger 4y agoAge isn't necessarily the issue imo. Lua is older than Ruby and has managed to show restraint against implementing every new popular language feature that has shown up in the interim time. And when Lua does add a feature it's usually done in a way that is congruent with the existing idioms. I'd say Ruby, JavaScript and PHP tend to bolt-on features that are popular without much thought of original design goals or existing idioms.
- Mikeb85 4y agoLuas also not used for much beyond scripting... There's no Shopify, GitHub, Stripe or AirBnB built on Lua.