Use threading macro & partial instead of anonymous function