5 ms·
> Mathematically speaking, no modern lanaguage is turning-complete because memory size on any machine has a fixed upper-bound. Many languages have no memory li
by tromp 3y ago
> Mathematically speaking, no modern lanaguage is turning-complete because memory size on any machine has a fixed upper-bound.
Many languages have no memory limit. Some do not even have a notion of memory (e.g. lambda calculus). Language implementations on physical machines do suffer from memory limits though.
Meson only allows bounded loops, so technically it's not Turing complete. But the author claims:
> ## Loop over 2^64 elements, this is effectively an infinite loop
- WCSTombs 3y agoYeah. It seems by the author is effectively arguing that general recursion and primitive recursion are equivalent. There seems to be a pretty fundamental failure of logic here.
- pron 3y agoYou're right that they're not the same, but the author also effectively (and perhaps inadvertently) shows why not being Turing complete cannot possibly have any effect whatsoever on the difficulty of analysing what a program does (which is the implied purpose of declaring that a language isn't Turing complete). After all, suppose Java and Python changed tomorrow so that a program panics whenever a loop exceeds some large constant number of iterations. Such a change will immediately make all of programs in those languages decidable without having any effect on their behaviour. Clearly, this zero-impact change will not make those programs easier to analyse.