The IRC protocol is infested with annoyances. One of these is parsing the messages sent to the client by the server. This is a problem I needed to solve when developing IRC Tools. Without a proper parsing mechanism, the entire set of libraries would be completely useless. How did I do it? Read on!