Функциональное программирование — парадигма программирования, опирающаяся на вычисление результатов функций, базирующееся на исходных данных и результатах других функций, и не предполагающая явного хранения состояния программы.