News for hackers. Stuff that matters.
Re:Learning Programming with Nim by rubiquity on Wednesday June 13, 2018 @12:48PM (#17304788)
You may want to consider Pony: https://www.ponylang.org/

Pony has compile time guarantees on not having data races, dead locks, runtime exceptions. It accomplishes this in a different way than Rust. For concurrency/async, Pony is Actor based, which I find to be a joy for modeling concurrent applications.

Here's a high level: https://www.ponylang.org/discover/#what-is-pony

Re:Learning Programming with Nim by gulabjamyn on Wednesday June 13, 2018 @02:30PM (#17305793)
Pony often has breaking changes. Not yet 1.0
Re:Learning Programming with Nim by dual_basis on Wednesday June 13, 2018 @06:24PM (#17307517)
Yeah, this is exactly why I didn't consider Pony.
Re:Learning Programming with Nim by dual_basis on Wednesday June 13, 2018 @07:45PM (#17308020)
Pony looks great, but based on reading the docs it seems it is a bit too early to do much with it. Looks like they don't really have any tooling (package manager?) yet.
Re:Learning Programming with Nim by rubiquity on Thursday June 14, 2018 @12:07PM (#17312661)
It is early days for Pony for sure, but it does have a package manager: https://github.com/ponylang/pony-stable

The breaking changes have been minimal since I've started using it. Typically just slight changes to some type signatures. The core parts (Actors, Reference Capabilities, Classes/Traits/Interfaces) are all stable at this point. I'm amazed by how well ponyc (the compiler) works. You just run it and it figures everything out.

If I could change anything in the language right now, I wouldn't mind seeing a couple of the reference capabilities renamed (trn, box, and maybe tag specifically), though I don't have any better names to offer. I'd also like if Actor Behaviour dispatch had a different syntax than Object method invoke.