Programação funcional é um
paradigma de programação que trata a computação como uma avaliação de
funções matemáticas e que evita estados ou dados mutáveis. Ela enfatiza a aplicação de funções, em contraste da
programação imperativa, que enfatiza mudanças no estado do programa.Uma função, neste sentido, pode ter ou não ter parâmetros e um simples valor de retorno. Os parâmetros -- ou argumentos, como às vezes são chamados -- são os valores de entrada da função, e o valor de retorno é o resultado da função. A definição de uma função descreve como a função será avaliada em termos de outras funções. Por exemplo, a função é definida em termos de funções de
exponenciação e
adição. Do mesmo modo, a linguagem deve oferecer funções básicas que não requerem definições adicionais.
Veja mais na Wikipédia.org...