Di recente ho iniziato a imparare a programmare a Scala, ed è stato divertente finora. Mi piace molto la capacità di dichiarare funzioni all'interno di un'altra funzione che sembra semplicemente cosa intuitiva da fare.
Una piscia che ho su Scala è il fatto che Scala richiede un tipo di ritorno esplicito nelle sue funzioni . E mi sento come questo ostacola l'espressività della lingua. Inoltre è difficile programmare con questo requisito. Forse è perché vengo dalla zona di comfort Javascript e Ruby. Ma per un linguaggio come Scala che avrà tonnellate di funzioni connesse in un'applicazione, non riesco a immaginare come faccio a brainstorming nella mia testa esattamente quale tipo di funzione particolare che sto scrivendo dovrebbe tornare con le ricorsioni dopo le ricorsioni.
Questo requisito di dichiarazione esplicita del tipo di ritorno sulle funzioni non mi dà fastidio per linguaggi come Java e C ++. Le ricorsioni in Java e C ++, quando avvenivano, spesso venivano gestite da 2 a 3 funzioni max. Mai più funzioni concatenate insieme come la Scala.
Quindi immagino di chiedermi se ci sia una buona ragione per cui Scala dovrebbe avere il requisito di funzioni con tipo di ritorno esplicito?