anchor.diff:  
   ;; @module IRC
   ;; @description a basic irc library
  -;; @version early alpha! 0.1 2011-10-31 14:21:26
  +;; @version early alpha! 0.1 2013-01-02 20:11:22
   ;; @author cormullion
   ;; Usage:
   ;; (IRC:init "newlithper") ; a username/nick (not that one obviously :-)
  
positive.code: (define (register-callback callback-name callback-function)
      (println {registering callback for } callback-name { : } (sym (term callback-function) (prefix callback-function)))
      (push (list callback-name (sym (term callback-function) (prefix callback-function))) Icallbacks)) 
  
  (define (do-callback callback-name data)
     (when (set 'func (lookup callback-name Icallbacks)) ; find first callback
  
negative.code: (define (process-ctcp username target message)
      (cond
          ((starts-with message "\001VERSION\001")
              (net-send Iserver (format "NOTICE %s :\001VERSION %s\001\r\n" username message)))
          ((starts-with message "\001PING")
              (set 'data (first (rest (clean empty? (parse message { } 0)))))
              (set 'data (trim data "\001" "\001"))
  