Earlier quoted context omitted.
I'm not sure this is even Turing complete considering the limitation he mentions: >The main limitation is that you need to know the size of the return value.
It's still Turing complete (though that's not saying much really). You can always grow the stack more :P
The only way I see is to allocate (almost) the entire machine memory to the stack, create one giant array in that chunk of memory and then put all lists in that single array. That's tantamount to reimplementing malloc on the stack.