Le variabili locali mutabili sono in una funzione che vengono utilizzate solo internamente (ad esempio la funzione non ha effetti collaterali, almeno non intenzionalmente) ancora considerate "non funzionali"?
es. nel controllo dello stile del corso "Programmazione funzionale con Scala" considera qualsiasi var
di utilizzo errato
La mia domanda, se la funzione non ha effetti collaterali, sta scrivendo un codice di stile imperativo ancora scoraggiato?
es. invece di usare la ricorsione di coda con il pattern dell'accumulatore, cosa c'è di sbagliato nel fare un loop locale per il loop e creare un local % mutabile% co_de e aggiungerlo, purché l'input non sia cambiato?
Se la risposta è "sì, sono sempre scoraggiati, anche se non ci sono effetti collaterali", qual è la ragione?