The existing purely functional data structures in IJP's library guile-pfds are great. However, be aware, that this library has not been maintained for a long time and that attempts to contact IJP have failed. So far I have used them and have not encountered a problem.
One funny thing I just noticed: I am not the only one often mistyping "PFDS" as "PDFs" (usually in lowercase though). On IJP's repo for "fectors":
> One such implementation is based on fingertrees and is provided as part of my pdfs package[1]