In de informatica is functioneel programmeren een programmeerstijl en een programmeerparadigma.
Hierbij wordt de informatieverwerking in de vorm van functies uitgedrukt, vergelijkbaar met wiskundige functies.
Voorbeelden van meer of minder zuivere programmeertalen voor functioneel programmeren
zijn APL, Erlang, F♯, Haskell, Lisp, ML, Scala en Scheme, waarvan Haskell de puurste is.
Veel functies in functionele programmeertalen zijn referentieel transparant. Dit houdt in
dat een expressie vervangen kan worden door zijn waarde zonder de werking van het programma te veranderen. Een voorbeeld hiervan zijn rekenkundige bewerkingen
Zover zelfs dat de lambdacalculus model staat voor het geheel van alle berekenbare
problemen die er zijn. Functionele talen kunnen dus alles berekenen wat berekend kan worden.