I've done a client too, it is available at http://www.algonet.se/~peoyli/RebIRC,
but its code needs some more work..
I mostly wrote this to learn Rebol and the IRC protocol, and it was meant to be
a bot that jumps into a channel and gets the userlist and leaves again (to make
the channel's people's page more interesting)..
My solution to the PING/PONG stuff was something like..
handle-irc-cmd: func [] [
switch/default/case irc/command reduce[
"PING" [
insert irc-port rejoin ["PONG " (first irc/params) newline]
prin #"^G"
]
...
with "irc" being an object which consists of
irc-obj: make object! [
prefix: make object! [full: nick: user: host: string!]
command: string!
params: block!
]
(as described in the RFC)
/PeO
>
> I've done a whole IRC client in REBOL, but not in position to release it in
> total. It was quite a while ago, so I need lots of head scratching to go
> back and figure things out... but will help if you're REALLY stuck.
>
> Russ
>