Вы можете читать слова как символы Lisp, используя всего несколько строк кода:
(defun read-words (file-name)
(with-open-file (stream file-name)
(loop while (peek-char nil stream nil nil)
collect (read stream))))
Пример входного файла - words.txt:
attack attempt attention attraction authority automatic awake
bright broken brother brown brush bucket building
comfort committee common company comparison competition
Чтениеfile:
> (read-words "words.txt")
=> (ATTACK ATTEMPT ATTENTION ATTRACTION AUTHORITY AUTOMATIC AWAKE BRIGHT BROKEN BROTHER BROWN BRUSH BUCKET BUILDING COMFORT COMMITTEE COMMON COMPANY COMPARISON COMPETITION)
Можно сохранить регистр, заключив символы в трубы (|) или объявив их как строки:
|attack| "attempt" ...
Считывание без потери регистра:
> (read-words "words.txt")
=> (|attack| "attempt" ...)