@ishara There's a good article explaining the separation you feel between XMPP and Matrix, in the way they have ended up today: https://blogs.gnome.org/tbernard/2018/05/16/banquets-and-barbecues/
tldr: all communication falls into 1 of 3 categories:
1) Personal (direct chats)
2) Private (group chats)
3) Public (room chats)
Historically, XMPP fills 1 quite well, even though it can do 2+3 with MUC (multi-user chats) -- it's just not as clean.
IRC was written to do 3, and to do it efficiently. That's why it doesn't really do 1+2 well.