What are the main differences between a macro and a function in programming? Your answer must contain at least 2 placeholders represented by square brackets, such as [language] or [compiler]. Include keywords [macro], [function], [programming] in the response.
user