• 2 Posts
  • 14 Comments
Joined 1 year ago
cake
Cake day: June 18th, 2023

help-circle




  • Just because it’s not possible on a Turing Machine doesn’t mean it’s impossible on a PC with finite memory. You just have to track all the memory that is available to the algorithm and once you detect a state you’ve seen already, you know it’s not halting ever. The detection algorithm will need an insane amount of memory though.

    Edit: think about the amount of memory that would need. It’s crazy but theoretically possible. In real world use cases only if the algorithm you’re watching has access to a tiny amount of memory.





  • tl;dr Language evolution and future outlook are big factors besides the existing language features themselves.

    I guess Rust has attracted many C++ devs because C++ is painful and there were no other/better options. Rust comes with a build/dependency management system and memory safety guarantees on top of the type safety. Even though C++ templates are still unmatched, I prefer Rust 95% of the time. C++ is evolving very slow and it’s extremely hard to participate. Rust will win that race eventually.

    Python has been around since 1991(!) and it took a looong time to build the community. It was a niche like Nim is now for many years.

    I’ll definitely keep an eye on Nim because it has the potential to become quite popular.

    Again, that’s all just my opinion.


  • I have to disagree with your “when use what” list. Python has production ready web backend frameworks, Rust is perfectly fine for complex and high-level software, and PHP is mostly obsolete. That’s my humble opinion though. I looked into Nim and like many of the concepts. It’s quite complex and I prefer Rust most of the time when Nim would be an option. I’d argue it’s some kind of “jack of all trades”. A bit like python but compiled, ref-counted, and probably a lot faster. It’s lacking the huge community python has though.