fork download
  1. ;; Функция для преобразования первого символа строки в верхний регистр
  2. (defun capitalize-first (word)
  3. (if (and (stringp word) (> (length word) 0) (upper-case-p (char word 0)))
  4. (string-capitalize word)
  5. word))
  6.  
  7. ;; Функция для обработки одного предложения (списка слов)
  8. (defun process-sentence (sentence)
  9. (mapcar #'capitalize-first sentence))
  10.  
  11. ;; Функция для обработки всего текста (списка предложений)
  12. (defun process-text (text)
  13. (mapcar #'process-sentence text))
  14.  
  15. ;; Пример использования
  16. (let ((text '(("this" "is" "A" "Sample" "text.") ("Some" "Words" "Are" "CAPITALIZED."))))
  17. (format t "Исходный текст:~%~A~%" text)
  18. (format t "Обработанный текст:~%~A~%" (process-text text)))
Success #stdin #stdout #stderr 0.02s 9464KB
stdin
Standard input is empty
stdout
Исходный текст:
((this is A Sample text.) (Some Words Are CAPITALIZED.))
Обработанный текст:
((this is A Sample text.) (Some Words Are Capitalized.))
stderr
Warning: reserving address range 0x80000c0000...0x1fffffffffff that contains memory mappings. clisp might crash later!
Memory dump:
  0x8000000000 - 0x80000bffff
  0x15357e600000 - 0x15357e8e4fff
  0x15357ea15000 - 0x15357ea39fff
  0x15357ea3a000 - 0x15357ebacfff
  0x15357ebad000 - 0x15357ebf5fff
  0x15357ebf6000 - 0x15357ebf8fff
  0x15357ebf9000 - 0x15357ebfbfff
  0x15357ebfc000 - 0x15357ebfffff
  0x15357ec00000 - 0x15357ec02fff
  0x15357ec03000 - 0x15357ee01fff
  0x15357ee02000 - 0x15357ee02fff
  0x15357ee03000 - 0x15357ee03fff
  0x15357ee80000 - 0x15357ee8ffff
  0x15357ee90000 - 0x15357eec3fff
  0x15357eec4000 - 0x15357effafff
  0x15357effb000 - 0x15357effbfff
  0x15357effc000 - 0x15357effefff
  0x15357efff000 - 0x15357effffff
  0x15357f000000 - 0x15357f003fff
  0x15357f004000 - 0x15357f203fff
  0x15357f204000 - 0x15357f204fff
  0x15357f205000 - 0x15357f205fff
  0x15357f25e000 - 0x15357f261fff
  0x15357f262000 - 0x15357f262fff
  0x15357f263000 - 0x15357f264fff
  0x15357f265000 - 0x15357f265fff
  0x15357f266000 - 0x15357f266fff
  0x15357f267000 - 0x15357f267fff
  0x15357f268000 - 0x15357f275fff
  0x15357f276000 - 0x15357f283fff
  0x15357f284000 - 0x15357f290fff
  0x15357f291000 - 0x15357f294fff
  0x15357f295000 - 0x15357f295fff
  0x15357f296000 - 0x15357f296fff
  0x15357f297000 - 0x15357f29cfff
  0x15357f29d000 - 0x15357f29efff
  0x15357f29f000 - 0x15357f29ffff
  0x15357f2a0000 - 0x15357f2a0fff
  0x15357f2a1000 - 0x15357f2a1fff
  0x15357f2a2000 - 0x15357f2cffff
  0x15357f2d0000 - 0x15357f2defff
  0x15357f2df000 - 0x15357f384fff
  0x15357f385000 - 0x15357f41bfff
  0x15357f41c000 - 0x15357f41cfff
  0x15357f41d000 - 0x15357f41dfff
  0x15357f41e000 - 0x15357f431fff
  0x15357f432000 - 0x15357f459fff
  0x15357f45a000 - 0x15357f463fff
  0x15357f464000 - 0x15357f465fff
  0x15357f466000 - 0x15357f46bfff
  0x15357f46c000 - 0x15357f46efff
  0x15357f471000 - 0x15357f471fff
  0x15357f472000 - 0x15357f472fff
  0x15357f473000 - 0x15357f473fff
  0x15357f474000 - 0x15357f474fff
  0x15357f475000 - 0x15357f475fff
  0x15357f476000 - 0x15357f47cfff
  0x15357f47d000 - 0x15357f47ffff
  0x15357f480000 - 0x15357f480fff
  0x15357f481000 - 0x15357f4a1fff
  0x15357f4a2000 - 0x15357f4a9fff
  0x15357f4aa000 - 0x15357f4aafff
  0x15357f4ab000 - 0x15357f4abfff
  0x15357f4ac000 - 0x15357f4acfff
  0x55fcf04db000 - 0x55fcf05cbfff
  0x55fcf05cc000 - 0x55fcf06d5fff
  0x55fcf06d6000 - 0x55fcf0735fff
  0x55fcf0737000 - 0x55fcf0765fff
  0x55fcf0766000 - 0x55fcf0796fff
  0x55fcf0797000 - 0x55fcf079afff
  0x55fcf093f000 - 0x55fcf095ffff
  0x7ffcf5ba7000 - 0x7ffcf5bc7fff
  0x7ffcf5be1000 - 0x7ffcf5be4fff
  0x7ffcf5be5000 - 0x7ffcf5be6fff