About a month ago I went to a talk by Ethan Herdrick, cofounder of Biographicon.com, and he gave a pretty solid review of file-based persistence. If I remember correctly biographicon.com runs on scheme running on a jvm and of course uses file-based persistence.
Some points:
- beta testers gave unsolicited feedback on how swift they felt the site was
- massive scaling is sort of a caviar problem - if your company gets bought by a player like google then they are going to rip out your backend anyway--they aren't buying you because you know how to scale.
It can be intersting if you want to have access to all the Java libs (that's one of the ideas of Clojure or Scala for example) and / or if you want to be able to be embedded in a client JVM (e.g. to write Scheme applets or sandboxed code). The latter cannot be solved by a JNI / FFI solution.
Access to the vast corpus of java libraries was the cited reason.
One interesting point that was made was that when you access the external libraries, it causes the scheme code to start to become less scheme-like and more like a java program written in scheme.