You are missing a close-paren in
(let [lines (line-seq (java.io.BufferedReader. *in*)]
The compiler would certainly complain about this from swank, so I get
the feeling you haven't pasted your actual code. Did you make some
edits?
Also, those free-standing ) and ] characters make me dizzy. My feeling
is that, when *some* parens are on new lines and some are bundled
together, it indicates that the programmer is still thinking in terms
of blocks and statements, rather than expressions: "let introduces a
new block so its close paren needs a new line, but colorize is just an
expression so I'll pile it up with the others". Of course you can
format your code however you want, but *everything* is an expression,
and it's usual to just pile up N close-braces when N expressions end.