Macros, unlike generics are super easy to implement, so there is no reason not implement them, unless you specifically don't want to implement them.
Java didn't have macros because no one wanted the kind of dialect that macros allow, ie. re-learning a language every time you change company.