title: Error loading cl-unicode
body: <p>I assume I must be missing something, rather new to this. Quicklisp update-dist and update-client say I have the latest, loaded cl-ppcre just before and it worked fine. SBCL version is 1.3.8 and I'm on Windows 7, if this is relevant. Any pointers appreciated.</p>
  
  <pre><code>* (ql:quickload :cl-unicode)
  To load "cl-unicode":
    Load 1 ASDF system:
      cl-unicode
  ; Loading "cl-unicode"
  .
  ; file: C:/Users/K/quicklisp/dists/quicklisp/software/cl-unicode-0.1.5/util.lisp
  ; in: DEFINE-HANGUL-CONSTANT "SBase"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "SBase" 44032)
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  
  ; in: DEFINE-HANGUL-CONSTANT "LBase"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "LBase" 4352)
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  
  ; in: DEFINE-HANGUL-CONSTANT "VBase"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "VBase" 4449)
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  
  ; in: DEFINE-HANGUL-CONSTANT "TBase"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "TBase" 4519)
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  
  ; in: DEFINE-HANGUL-CONSTANT "VCount"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "VCount" 21)
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  
  ; in: DEFINE-HANGUL-CONSTANT "TCount"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "TCount" 28)
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  
  ; in: DEFINE-HANGUL-CONSTANT "NCount"
  ;     (CL-UNICODE::DEFINE-HANGUL-CONSTANT "NCount"
  ;                                         (* CL-UNICODE::+V-COUNT+
  ;                                            CL-UNICODE::+T-COUNT+))
  ; --&gt; EVAL-WHEN
  ; ==&gt;
  ;   (DEFCONSTANT :COMMA
  ;     (CL-UNICODE::CREATE-SYMBOL CL-UNICODE::NAME)
  ;     :COMMA
  ;     CL-UNICODE::VALUE
  ;     :COMMA
  ;     (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book."
  ;             CL-UNICODE::NAME))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFCONSTANT :COMMA ...))
  ;   error while parsing arguments to DEFMACRO DEFCONSTANT:
  ;     too many elements in
  ;       (:COMMA (CREATE-SYMBOL NAME) :COMMA VALUE :COMMA
  ;        (FORMAT NIL "The constant `~A' from chapter 3 of the Unicode book." NAME))
  ;     to satisfy lambda list
  ;       (SB-IMPL::NAME SB-IMPL::VALUE &amp;OPTIONAL (SB-IMPL::DOC)):
  ;     between 2 and 3 expected, but got 6
  .
  debugger invoked on a UIOP/LISP-BUILD:COMPILE-FILE-ERROR in thread
  #&lt;THREAD "main thread" RUNNING {100299C713}&gt;:
    COMPILE-FILE-ERROR while compiling #&lt;CL-SOURCE-FILE "cl-unicode/base" "util"&gt;
  
  Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
  
  restarts (invokable by number or by possibly-abbreviated name):
    0: [RETRY                        ] Retry
                                       compiling #&lt;CL-SOURCE-FILE "cl-unicode/base" "util"&gt;.
    1: [ACCEPT                       ] Continue, treating
                                       compiling #&lt;CL-SOURCE-FILE "cl-unicode/base" "util"&gt;
                                       as having been successful.
    2:                                 Retry ASDF operation.
    3: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration.
    4: [ABORT                        ] Give up on "cl-unicode"
    5:                                 Exit debugger, returning to top level.
  
  (UIOP/LISP-BUILD:CHECK-LISP-COMPILE-RESULTS NIL T T "~/asdf-action::format-action/" ((#&lt;ASDF/LISP-ACTION:COMPILE-OP &gt; . #&lt;ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-unicode/base" "util"&gt;)))
  0] 4
  ;
  ; compilation unit aborted
  ;   caught 2 fatal ERROR conditions
  ;   caught 7 ERROR conditions
  
  ("cl-unicode")
  *
  </code></pre>
  
  <p>Edit: The plot thickens. Now this also happened:</p>
  
  <pre><code>* (ql:quickload "quicklisp-slime-helper")
  To load "quicklisp-slime-helper":
    Install 3 Quicklisp releases:
      alexandria quicklisp-slime-helper slime
  ; Fetching #&lt;URL "http://beta.quicklisp.org/archive/slime/2016-05-31/slime-v2.18.tgz"&gt;
  ; 1076.19KB
  ==================================================
  1,102,017 bytes in 3.68 seconds (292.28KB/sec)
  ; Fetching #&lt;URL "http://beta.quicklisp.org/archive/alexandria/2016-08-25/alexandria-20160825-git.tgz"&gt;
  ; 49.63KB
  ==================================================
  50,819 bytes in 0.31 seconds (160.09KB/sec)
  ; Fetching #&lt;URL "http://beta.quicklisp.org/archive/quicklisp-slime-helper/2015-07-09/quicklisp-slime-helper-20150709-git.tgz"&gt;
  ; 2.16KB
  ==================================================
  2,211 bytes in 0.00 seconds (1079.59KB/sec)
  ; Loading "quicklisp-slime-helper"
  [package swank-loader]..While evaluating the form starting at line 151, column 0
    of #P"C:/Users/K/quicklisp/dists/quicklisp/software/slime-v2.18/swank-loader.lisp":
  
  debugger invoked on a SIMPLE-ERROR in thread
  #&lt;THREAD "main thread" RUNNING {100299C713}&gt;:
    :COMMA is not allowed as a directory component.
  
  Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
  
  restarts (invokable by number or by possibly-abbreviated name):
    0: [RETRY                        ] Retry EVAL of current toplevel form.
    1: [CONTINUE                     ] Ignore error and continue loading file "C:\\Users\\K\\quicklisp\\dists\\quicklisp\\software\\slime-v2.18\\swank-loader.lisp
  ".
    2: [ABORT                        ] Abort loading file "C:\\Users\\K\\quicklisp\\dists\\quicklisp\\software\\slime-v2.18\\swank-loader.lisp".
    3: [TRY-RECOMPILING              ] Recompile swank-loader and try loading it again
    4: [RETRY                        ] Retry
                                       loading FASL for #&lt;SWANK-LOADER-FILE "swank" "swank-loader"&gt;.
    5: [ACCEPT                       ] Continue, treating
                                       loading FASL for #&lt;SWANK-LOADER-FILE "swank" "swank-loader"&gt;
                                       as having been successful.
    6:                                 Retry ASDF operation.
    7: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
                                       configuration.
    8:                                 Give up on "quicklisp-slime-helper"
    9:                                 Exit debugger, returning to top level.
  
  (SB-IMPL::IMPORT-DIRECTORY #&lt;unavailable argument&gt; NIL)
  0]
  </code></pre>
  
  <p>In both error messages, the symbol :COMMA plays a role. I just realized I used this symbol in an own program in an earlier experiment to do with part-of-speech tagging. Could this be a problem?</p>
  
  <p>Finally I tried to install babel, which also failed:</p>
  
  <pre><code>* (ql:quickload :babel)
  To load "babel":
    Load 1 ASDF system:
      alexandria
    Install 2 Quicklisp releases:
      babel trivial-features
  ; Fetching #&lt;URL "http://beta.quicklisp.org/archive/trivial-features/2015-09-23/trivial-features-20150923-git.tgz"&gt;
  ; 10.26KB
  ==================================================
  10,510 bytes in 0.09 seconds (119.35KB/sec)
  ; Fetching #&lt;URL "http://beta.quicklisp.org/archive/babel/2015-06-08/babel-20150608-git.tgz"&gt;
  ; 248.03KB
  ==================================================
  253,987 bytes in 1.06 seconds (234.22KB/sec)
  ; Loading "babel"
  [package alexandria]
  ; file: C:/Users/K/quicklisp/dists/quicklisp/software/alexandria-20160825-git/package.lisp
  ; in: DEFPACKAGE :ALEXANDRIA
  ;     (DEFPACKAGE :ALEXANDRIA
  ;       ()
  ;       0
  ;       ()
  ;       DEV
  ;       (:NICKNAMES :ALEXANDRIA)
  ;       (:USE :CL)
  ;       (:LOCK T)
  ;       (:EXPORT #:IF-LET
  ;                #:WHEN-LET
  ;                #:WHEN-LET*
  ;                #:CSWITCH
  ;                #:ESWITCH
  ;                #:SWITCH
  ;                #:MULTIPLE-VALUE-PROG2
  ;                #:NTH-VALUE-OR
  ;                #:WHICHEVER
  ;                #:XOR
  ;                #:DEFINE-CONSTANT
  ;                ...))
  ;
  ; caught ERROR:
  ;   (during macroexpansion of (DEFPACKAGE :ALEXANDRIA
  ;     ...))
  ;   bogus DEFPACKAGE option: NIL
  
  debugger invoked on a UIOP/LISP-BUILD:COMPILE-FILE-ERROR in thread
  #&lt;THREAD "main thread" RUNNING {100299C713}&gt;:
    COMPILE-FILE-ERROR while compiling #&lt;CL-SOURCE-FILE "alexandria" "package"&gt;
  
  Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
  
  restarts (invokable by number or by possibly-abbreviated name):
    0: [RETRY                        ] Retry
                                       compiling #&lt;CL-SOURCE-FILE "alexandria" "package"&gt;.
    1: [ACCEPT                       ] Continue, treating
                                       compiling #&lt;CL-SOURCE-FILE "alexandria" "package"&gt;
                                       as having been successful.
    2:                                 Retry ASDF operation.
    3: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
                                       configuration.
    4: [ABORT                        ] Give up on "babel"
    5:                                 Exit debugger, returning to top level.
  
  (UIOP/LISP-BUILD:CHECK-LISP-COMPILE-RESULTS NIL T T "~/asdf-action::format-action/" ((#&lt;ASDF/LISP-ACTION:COMPILE-OP &gt; . #&lt;ASDF/LISP-ACTION:CL-SOURCE-FILE "alexa
  ndria" "package"&gt;)))
  0] 4
  ;
  ; compilation unit aborted
  ;   caught 2 fatal ERROR conditions
  ;   caught 1 ERROR condition
  
  (:BABEL)
  </code></pre>
  
  <p>Edit 2: Just did the same in Linux (Mint 18 VBox) and received the same versions:</p>
  
  <pre><code>* (ql:system-apropos "unicode")
  #&lt;SYSTEM cl-ppcre-unicode / cl-ppcre-2.0.11 / quicklisp 2016-08-25&gt;
  #&lt;SYSTEM cl-ppcre-unicode-test / cl-ppcre-2.0.11 / quicklisp 2016-08-25&gt;
  #&lt;SYSTEM cl-unicode / cl-unicode-0.1.5 / quicklisp 2016-08-25&gt;
  #&lt;SYSTEM cl-unicode/base / cl-unicode-0.1.5 / quicklisp 2016-08-25&gt;
  #&lt;SYSTEM cl-unicode/build / cl-unicode-0.1.5 / quicklisp 2016-08-25&gt;
  #&lt;SYSTEM cl-unicode/test / cl-unicode-0.1.5 / quicklisp 2016-08-25&gt;
  #&lt;SYSTEM hu.dwim.syntax-sugar/unicode / hu.dwim.syntax-sugar-20160318-darcs / quicklisp 2016-08-25&gt;
  * 
  </code></pre>
  
  <p>Only thing I need to know, am I missing something I should know or is it borked? I want to work with it and learn Lisp, not fix installation issues.</p>
  
  <p>Edit 3: Thanks to the hint to check integrity of the readtable, it now works:</p>
  
  <pre><code>* (setq *readtable* (copy-readtable nil))
  
  #&lt;READTABLE {100569BA23}&gt;
  * (ql:quickload :cl-unicode)
  To load "cl-unicode":
    Install 1 Quicklisp release:
      cl-unicode
  ; Fetching #&lt;URL "http://beta.quicklisp.org/archive/cl-unicode/2014-12-17/cl-unicode-0.1.5.tgz"&gt;
  ; 474.62KB
  ==================================================
  486,011 bytes in 1.80 seconds (264.27KB/sec)
  ; Loading "cl-unicode"
  [package cl-unicode]..............................
  [package cl-unicode-names]....................
  (:CL-UNICODE)
  *
  </code></pre>
  
  <p>It remains a mystery why the old version of cl-unicode keeps getting pulled, and why the same problem occurred on another box with no history of tinkering. But I'm satisfied for now. Thanks to all who took the time to respond.</p>