Pode parecer possível, mas não será uma programação funcional pura. Pode resultar em programação imperativa.
Não há como perguntar por que ele entende por possível programação funcional, como mencionado por haylem. Aqui está:
Depende do que você quer dizer com "programação funcional" e "possível".
A programação funcional não pode ter definições ou significados diferentes, embora possa ter muitas explicações.
Como OOP, podemos perguntar "o que você quer dizer com OOP?".
Definitivamente, haverá muitas explicações, mas pertencerá apenas a um objetivo, o objetivo da OOP.
O mesmo se aplica à programação funcional .
Quando dizemos significado funcional, os programas consistem em funções.
O papel das funções é retornar um argumento / parâmetro avaliado (argumento é variável, a expressão surgiu ao chamar a função enquanto parâmetro é variável que faz parte da declaração da função).
As funções também sempre retornam o mesmo resultado quando os mesmos argumentos são passados. Dessa maneira, é mais fácil evitar erros ou depurar futuros. Pela programação funcional, podemos evitar efeitos colaterais, como modificar variáveis globais.
exemplo em JavaScript:
function increment(lis){
return lis.map(
function (x){
return x+2;
}
);
}
var myList = [4, 7, 2, 3];
console.log(increment(myList));
console.log(myList);
O incremento da função adiciona 1 valor a cada elemento dentro do objeto e retorna o resultado. O valor de myList não mudou, mas quando chamamos as funções, vimos o valor agregado aos elementos desse objeto.
Como minha resposta à Programação Funcional é possível em Java? , Acredito que não é possível ter verdadeira programação funcional em java. Porque o java é realmente projetado para ser OOP, no qual estende a programação imperativa e a aprimora para manutenção. Quando o estado de um objeto, variável etc, mudou, isso já é uma programação imperativa.