Lisp is not a functional language. It can be used as such, but if you're going to do that, you are going to miss its full potential. In addition to that, if you want a functional language, use Haskell instead – as a functional language, it is way better than any Lisp I know.
Lisps are, first and foremost, meta-programming languages. That is what sets them apart and makes them awesome.
I never said you had to be working in a
purely functional paradigm.
Though honestly when the point of the exercise is to expose yourself to another paradigm it doesn't really matter if you "miss [the] full potential"; because the benefit you are trying to obtain isn't that of learning another language, it's being exposed to another paradigm. The goal I was implying here wasn't to walk out as a professional Lisper (or heck, even a great one), because if you want to learn a language for actual usage then your time would be much better spent with a more commonly used language like Ruby or Clojure to learn since the job demand for them is much much higher than that for common Lisp. The reasons to choose Lisp instead are that it, one, allows you access to both the functional programming paradigm and the more niche paradigm of meta-programming, and two, it's an old enough language with enough historical value that pretty much everyone has heard of it.
Lisp is a wonderful language with a very passionate community (often too passionate about some mighty trivial things, if you ask me
), but short of a brief exposure to other paradigms of programming or in cases where a field uses it any time you spend in terms of something you are actually going to use sometime in the future is much better spent on learning another OO language (C, or Java, or Python), or on learning web programming (HTML+PHP, Javascript), or learning database programming (SQL), or learning a multi-purpose language (Perl, Ruby) or even learning a specialized language like R for statistical analysis or MATLAB for scientific/engineering work. All of those will pay back your time in terms of actual usability in the job world over many times more than Lisp ever will (again, barring that you are looking into a field that is full of other Lisp enthusiasts).
(Lisp's lower level of popularity, of course, has only a slight amount to do with the language itself, so I don't mean to imply that it's useless or anything [or that you shouldn't learn it "for fun" as opposed to future-focused reasons]. Much larger factors in its inability to become a mainstream language were the failure of the Lisp community to ever rally around a single standard [or even a few standards] like many other languages did, the prevalence of a free C compiler with many early operating systems, and the fact that it started itself out as a flagship language for a programming field that suffered a very severe hit in the early 90's due to over enthusiasm bursting a belief bubble and causing severe cutbacks, along with several other notable factors, not any direct fault of the language itself).