I would like to do some web programming using functional programming. What decent web-frameworks exists for functional programming languages?
Lift is an interesting framework for Scala. The practical advantage of Scala is that it can use any existing Java libraries.
(defpage "/welcome"  "Welcome to Noir!") (server/start 8080)
I particularly like the way that you can then build your entire web application just using function composition, supported with a few macros to enable a nice declarative DSL.
Compojure is an open source web framework for the Clojure programming language.
As you have left any languages out of the question, I guess you accept multiple languages...
So for the language F# there exists FSharp.WebTools.
I recommend looking into Erlang and yaws. Erlang is a lightweight functional programming language with a great set of features, good libraries and an active development community. Yaws is efficient and well matained.
Snap is a nice and really fast web framework for Haskell.
a simple web development framework for unix systems, written in the Haskell programming language. Snap has a high level of test coverage and is well-documented. Features include:
- A fast HTTP server library
- A sensible and clean monad for web programming
- An HTML-based templating system for generating pages...
There is a comparison of Erlang web frameworks on Github:
I haven't played with all the frameworks listed there so I don't want to judge, but I've been using Zotonic quite extensively in my currently project and I can wholeheartedly recommend it. As far as I know it's the only Erlang framework which is not only a framework but also a full-blown CMS. So you can start easily with just the CMS features and then expand the website by adding your custom functionality using your own modules. In my case I am using it purely as a framework because at this moment the CMS features work only with PostgreSQL and I can't use a separate database. But even just as a framework it offers lots of features not always found in the other frameworks.
What's very nice is that the project is being very actively developed because the people behind Zotonic design and implement websites and they use it as their CMS of choice.
If I had to choose then I would probably give Zotonic the first chance, then ChicagoBoss, and then Nitrogen.