I'm surprised this wasn't mentioned before, but same as additional macro lines, this would require more space, and if I understand the post correctly, quite a lot. If you store macro strings serverside though, there would be lots of new issues. For one, I don't think the coding would be that simple, it would require a lot of safeguards. Not being able to enter the same string title twice isn't enough to prevent looping, since /macrostring would be a normal command, it could be called within a macro string as well. Disabling that may not be as easy as it sounds, since currently there's no way for SE to know where a command comes from, if it comes from a normal macro, entered manually, or from within a macro string. They would have to change the ways commands are sent/interpreted completely to make it work, for example send an additional overhead to the server every time a command is sent. This would take lots of extra traffic and computation cost though.
If it was stored serverside, it would again have to have some additional safeguards to prevent looping, since one macro could call a macro string several times, or make a macro string execute a macro that contains another macro string, etc. It would have to implement some kind of stack to trace where macro calls are coming from, to prevent looping.
It is a new idea, additional macro lines would, so to speak, just delay the problem. This offers a new solution of being able to combine macros in a new way. However, there's plenty of pitfalls to consider, and maybe from space requirements alone it wouldn't be feasible. Also, I don't know if it's very user friendly, plenty of people don't even understand current macros fully. And I have to say, even I am a bit confused by this idea, especially the grouping thing. I hope SE considers
Tamarsama's idea, it seems simpler both to understand/use (in fact, it would make gear macros a lot easier to understand than they are now) as well as being easier to implement. And with some sophisticated coding it could even conserve lots of space, cause it would alleviate the need for so many macro lines, unlike this idea that would add new lines with the respective macro strings.