Ich habe vor kurzem angefangen, in Scala Programmieren zu lernen, und es hat bisher Spaß gemacht. Ich mag die Fähigkeit, Funktionen innerhalb einer anderen Funktion zu deklarieren, was einfach intuitiv zu tun scheint.
Ein kleiner Ärger, den ich über Scala habe, ist die Tatsache, dass Scala in seinen Funktionen einen expliziten Rückgabetyp benötigt . Und ich habe das Gefühl, dass dies die Ausdruckskraft der Sprache behindert. Es ist auch nur schwierig, mit dieser Anforderung zu programmieren. Vielleicht liegt es daran, dass ich aus der Javascript- und Ruby-Komfortzone komme. Aber für eine Sprache wie Scala, die Tonnen von verbundenen Funktionen in einer Anwendung hat, kann ich mir nicht vorstellen, wie ich in meinem Kopf genau überlege, welchen Typ die bestimmte Funktion, die ich schreibe, mit Rekursionen nach Rekursionen zurückgeben soll.
Diese Anforderung der expliziten Rückgabetypdeklaration für Funktionen stört mich nicht für Sprachen wie Java und C ++. Rekursionen in Java und C ++ wurden, wenn sie auftraten, häufig mit maximal 2 bis 3 Funktionen behandelt. Niemals sind mehrere Funktionen wie Scala miteinander verkettet.
Ich frage mich also, ob es einen guten Grund gibt, warum Scala die Anforderung von Funktionen mit explizitem Rückgabetyp haben sollte.