| spaced print -- used for printing variables, structures, etc. sprint :: { sprint_counter :: next_sprint_counter :: ulong first_time :: ubyte args_alias :: one_arg_alias :: * code if first_time == true if trap(size(args)) /= passed printl("sprint(): error in arguments (self-reference?)") return endif args_alias = @args | don't use args in the arguments else, args_alias = @args[1], end if for sprint_counter in [1, top(args_alias)] if trap(one_arg_alias =@ args_alias[sprint_counter]) == passed | i.e. if not void if variable_type(one_arg_alias) == 10 print("{ ") (next_sprint::sprint).first_time = false next_sprint(one_arg_alias) print(" }") else print(one_arg_alias) endif else print("*") endif if sprint_counter < top(args_alias), print(", ") elseif first_time == true, print("\n"), end if endf args_alias =@ * | to prevent jamming one_arg_alias =@ * } sprint.first_time = true