A lightweight programming environment for desktop and mobile devices
-- Internal helper for animations.
-- Record the stack of function calls that led to any error within a coroutine.
-- Lua normally prints out errors with callstacks, but coroutines interrupt the stack unless we do some additional work.
save_callstack = function(err)
	local callstack = debug.traceback('', --[[stack frame]]2)
	Error_with_callstack = 'Error: ' .. cleaned_up_frame(tostring(err))..'\n'..cleaned_up_callstack(callstack)
end