On Thursday, 26 June 2014 at 21:01:40 UTC, Araq wrote:
Spark is a research language that does not work, as I've
discovered and discussed with you before. It cannot be
determined the max stack usage at compile time, again, this is
the halting problem.
What?! It's easily solvable: Forbid recursion and indirect
function calls and it's guaranteed that the program only
requires
a fixed size stack and you can compute an upper bound of the
required stack size at compile-time. Which is BTW exactly what
OpenCL does as GPUs tend to have no stacks.
Actually CUDA do have recursion, and indirect function calls.