我最近开始学习在Scala编程,到目前为止,它很有趣。我真的很喜欢在另一个函数中声明函数的功能,这似乎很直观。
关于Scala的一个烦恼是,Scala在其函数中需要显式的返回类型。而且我觉得这阻碍了语言的表达能力。同样,很难用该要求进行编程。也许是因为我来自Javascript和Ruby舒适区。但是对于像Scala这样在应用程序中具有成千上万个连接函数的语言,我无法想象如何头脑风暴,确切地讲出我正在编写的特定函数应该在递归之后返回的类型。
对于函数的显式返回类型声明的这种要求,对于像Java和C ++这样的语言,请不要打扰我。Java和C ++中的递归发生时,通常最多要处理2到3个函数。从来没有像Scala这样将多个功能链接在一起。
因此,我想我想知道是否有充分的理由解释为什么Scala应该要求具有显式返回类型的函数?