Why not just use one of the Common Lisp flavors then? Racket has been rising in popularity last few years: https://racket-lang.org
But if there is a CL out there that does all that I'd give it a try tonight :)
Parallel programming: https://lparallel.org/overview/ Functional collections: https://github.com/slburson/fset STM: https://common-lisp.net/project/cl-stm/doc/index.html
Worth taking a look into definitely, but it doesn't have STM and "persistent data structures" which jfaucett seems to want. It does have solid concurrency and parallelism primitives, though.