IRC is often romanticized, but after working with its protocol spec, I found it rather unsavory. Its unstructured message format looks like this:<p><pre><code> :User1 PRIVMSG User2 :Hello, are you receiving this message?
</code></pre>
While this might look fine at first glance, the lack of more regular structure caused issues. Some messages are easier to parse than others. Each implementation introduced quirks and variations, creating countless edge cases and hairy parsing code. To be fair, IRC _was_ a product of its time... but s-expressions were invented in the 1950s, so adding more structure and rigor to the messages wasn't out of reach.<p>My memories are from a long time ago so I may be overreacting... perhaps the Ergo authors can comment on their experiences if they are around here! I heard about IRCv3 but I doubt that effort solved most of my main gripes with the protocol.<p>If I were to work on a messaging app today, I'd look elsewhere for inspiration. From a quick search, it seems there's room for a modern and _simple_ protocol for chat, simpler than XMPP or Matrix. Essentially, we need a protocol that is for messaging what Gemini is for HTTP. Stretch: squinting a bit, the NATS client protocol looks close to a starting point for something like that [1].<p>--<p>1: <a href="https://docs.nats.io/reference/reference-protocols/nats-protocol" rel="nofollow">https://docs.nats.io/reference/reference-protocols/nats-prot...</a>