You are both right. “Complexity” and “richness” are potential attack vectors but not necessarily broken by definition.
One way to look at it is that a messaging protocol and application is a transport mechanism. What the recipient does with the message is up to it.
A safe way to tackle this may be:
- the transport mechanism allows the sender to specific a MIME type attribute for the message
- the recipient display mechanism supports an enable/disable control for each recognised MIME type
- the recipient display mechanism supports plug-ins for niche MIME types (as well as built-in support for more common MIME types)
So TeX may not even exist by default but if you install the right plug-in and enable the corresponding MIME type then voilà.
And @prolog can disable HTML.
Yes. Any image format.
But that won’t work if the intention is to edit the maths back and forth.