Funktionale Programmierung ist ein Paradigma, das versucht, Rechenprobleme durch die verkettete Bewertung von Funktionen zu lösen, deren Ausgabe eher durch ihre Eingaben als durch den Programmzustand bestimmt wird. Bei dieser Art der Programmierung sind Nebenwirkungen und veränderbare Daten veraltet und normalerweise streng isoliert.