my current way: function action() co = coroutine.create( function() print("hi") wait(1500) print("what's up") end) addPollFunction(co) end i'd prefer something like this (macro-like): START_FUNCTION(action()) print("hi") wait(1500) print("what's up") END_FUNCTION