Emacs script pitfalls
lunaryorn.com
lunaryorn.com
Racket would be another fine alternative, for those who would like to do command-line scripting in a Lisp but prefer a more robust language (than Emacs Lisp) with excellent support for functional programming patterns:
In general, sure, it's a powerful tool.
[ Edited: in light of the reply below. ]
http://nicholaskariniemi.github.io/2014/02/11/jvm-slow-start...
And, as long as we're talking Schemes, perhaps the most appropriate Scheme for Emacs users to try is Guile,[2] for its integration in to Emacs.[3]
That said, no Scheme (or Lisp) can be properly called a "functional language". They are multi-pradigm languages. You can write in a functional style in them, but you are not forced to do so. Same with OCaml, for that matter.
[1] - http://www.call-cc.org/
However, some Lisps/Schemes go further than others to support and promote programming in a functional style. I'm unfamiliar with Chicken Scheme and haven't spent any time with Guile, so I can't comment on those languages.
Racket and Clojure, in my experience, both tend to heavily favor the functional style with respect to their core libraries and defaults regarding im/mutability.
François-René Rideau gave a talk called "Using Common Lisp as a Scripting Language" at this year's ILC [3] that covered these subjects in detail, but I don't believe any videos have been posted.
[1] http://cliki.net/cl-launch