I'm having trouble imagining a sub that controls the order of evaluation of its 'parameters'; that sort of control of execution feels like it requires macros. Could you give me an example? For instance, two subs
first and
second such that
first(print('a'), print('b')) # prints 'ab'
second(print('a'), print('b')) # prints 'ba'
To me, this whole thing feels like a misunderstanding. Each sub receives one list value as an argument. We're not passing in expressions to be evaluated or anything like that.