Ivan Horvat · 2017-11-08 17:21
This language is pretty interesting.
It has a fairly unique actor-based concurrency model with static typing guarentees, which among other things lets it have a 100% non-blocking garbage collector with no write blocks, GC pauses, or anything.
Also, it has arbitrary predicate dispatch, which generalizes both multimethods and pattern matching, which I find quite interesting.
The overall syntax is kind of meh, but the type system and the way it interacts with language features is really interesting.
https://www.ponylang.org/
Nanashi No Gombe · 2017-11-08 22:45
The entire Pony site is nothing but hype and koolaid. Other than a brief code snippet there is no actual information about the language at all except a long list of bullet points of things its supposed to solve.
Switch · 2017-11-08 23:30
>>4835
Right, I also wish it had more code samples in the actual site of the language as opposed to the tutorials. That annoyed me as well.
The main tutorial is a reasonably good introduction though: https://tutorial.ponylang.org/getting-started/how-it-works.html
Basically the concurrency models is based on actors together with Rust-ish linear types.
Morpheus · 2017-11-12 08:56
I think it's interesting to see what kind of compiler errors pop up if you even try to write a program with racing conditions:
https://playground.ponylang.org/?gist=ac406f71079c991a1fbd6cb998f46702
For example, function and behaviour types need to be of a certain form to mutate data. I didn't quite catch that reading the tutorial linked above.
setq · 2017-11-12 08:58
>>4906
(or making FinishLine a class instead of an actor)
https://playground.ponylang.org/?gist=ac406f71079c991a1fbd6cb998f46702