Formerly u/CanadaPlus101 on Reddit.

  • 15 Posts
  • 986 Comments
Joined 2 years ago
cake
Cake day: June 12th, 2023

help-circle

  • They don’t prevent it, they just don’t implement it. A real (physical) CPU is a fixed electrical circuit and can’t just divide in two the way it would have to for the ideal mathematical version of recursion. If you want a simple way to visualise this, how would you implement recursion (as opposed to just loops) on a Turing machine with tapes?

    Different CPUs might have strategies to approximate certain kinds of recursion, but at some point my own knowledge ends, and there has been many different designs. Tail recursion in particular is usually just turned back into a loop at the compiler, and typical modern architectures implement a call stack at the hardware level, which allows you to do limited-depth recursion, but breaks like in OP if you try to go too deep.











  • I’ve seen things like this posted several times on here. It always turns out it doesn’t actually catch all the possible problems, or it’s garbage collected, or it’s non-usable for real code.

    If it was that easy, the people who wrote Rust with all it’s complexity and divergence from the norm were idiots, and I really don’t think they were.




  • Yes. Freedom can be used for good or bad. I assume the lecturer was talking about crypto being used mostly in crime, which happens because it’s not controlled by an institution that can confiscate it.

    The way it’s phrased here makes freedom look good, but don’t forget it actually means there’s valid arguments for limiting freedom just as much as for limiting control. You have to get into a lot more detail to really get anywhere.