diff --git a/extra/irc/client/authors.txt b/extra/irc/client/authors.txt
index 5674120196..8421e8b778 100644
--- a/extra/irc/client/authors.txt
+++ b/extra/irc/client/authors.txt
@@ -1,2 +1,3 @@
+Bruno Deferrari
 Doug Coleman
 Slava Pestov
diff --git a/extra/irc/client/client-tests.factor b/extra/irc/client/client-tests.factor
index 304ab25402..24a753d615 100644
--- a/extra/irc/client/client-tests.factor
+++ b/extra/irc/client/client-tests.factor
@@ -1,7 +1,8 @@
 USING: kernel tools.test accessors arrays sequences qualified
        io.streams.string io.streams.duplex namespaces threads
-       calendar irc.client.private ;
+       calendar irc.client.private concurrency.mailboxes classes ;
 EXCLUDE: irc.client => join ;
+RENAME: join irc.client => join_
 IN: irc.client.tests
 
 ! Utilities
@@ -64,13 +65,16 @@ privmsg new
                   [ connect-irc ] keep 1 seconds sleep
                     nick>> name>> ] unit-test
 
-! TODO: Channel join messages
-! { ":factorbot!n=factorbo@some.where JOIN :#factortest"
-!   ":ircserver.net MODE #factortest +ns"
-!   ":ircserver.net 353 factorbot @ #factortest :@factorbot "
-!   ":ircserver.net 366 factorbot #factortest :End of /NAMES list."
-!   ":ircserver.net 477 factorbot #factortest :[ircserver-info] blah blah"
-! } make-client dup "factorbot" set-nick
+{ join_ "#factortest" } [
+             { ":factorbot!n=factorbo@some.where JOIN :#factortest"
+             ":ircserver.net MODE #factortest +ns"
+             ":ircserver.net 353 factorbot @ #factortest :@factorbot "
+             ":ircserver.net 366 factorbot #factortest :End of /NAMES list."
+             ":ircserver.net 477 factorbot #factortest :[ircserver-info] blah blah"
+             } make-client dup "factorbot" set-nick
+             [ connect-irc ] keep 1 seconds sleep
+             join-messages>> 5 seconds mailbox-get-timeout
+             [ class ] [ trailing>> ] bi ] unit-test
 ! TODO: user join
 ! ":somedude!n=user@isp.net JOIN :#factortest"
 ! TODO: channel message
diff --git a/extra/irc/client/client.factor b/extra/irc/client/client.factor
index cc500fbe61..5b8fbf62ee 100644
--- a/extra/irc/client/client.factor
+++ b/extra/irc/client/client.factor
@@ -1,8 +1,8 @@
-! Copyright (C) 2007 Doug Coleman, Slava Pestov.
+! Copyright (C) 2008 Bruno Deferrari, Doug Coleman, Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
-USING: arrays combinators concurrency.mailboxes fry io strings
+USING: combinators concurrency.mailboxes fry io strings
        io.encodings.8-bit io.sockets kernel namespaces sequences
-       sequences.lib splitting threads calendar classes.tuple
+       splitting threads calendar classes.tuple
        classes ascii assocs accessors destructors continuations ;
 IN: irc.client