Ich habe in letzter Zeit mit funktionaler Programmierung geforscht und gespielt, nur um mein Denken über Programmierung zu erweitern, weil ich das Denken "funktional" schwierig finde.Funktionale Programmierung: Beste Plattform/Umgebung
Ich habe Glasgow Haskell heruntergeladen und damit experimentiert.
Was ich frage mich ist, was ist die beste Plattform für Windows mit FP experimentieren? Ich würde einen JVM-basierten Ansatz bevorzugen, aber ein anderer Beitrag zu SO hat darauf hingewiesen, dass eine echte FP-Sprache nicht auf der JVM implementiert werden kann, da die Tail-Rekursion nicht unterstützt wird. Was sagst du?
EDIT: Wie gesagt, ich habe ein wenig mit Haskell experimentiert; Auf den Rat einer der Antworten habe ich die Scala-Website überprüft. Wenn ich mir die Scala-Beispiele anschaue, scheint der Code "vertrauter" zu sein (mein Hintergrund ist C und Java), aber er scheint entschieden eher OO/prozedural und weniger funktional zu sein. Ein großer Vorteil von Scala wäre, dass es mir ein anderes Sprachwerkzeug gibt, das ich neben Java einsetzen kann, und könnte ein weiterer Pfeil in meinem aktuellen professionellen Köcher werden, anstatt nur eine Lernübung zu sein. Wenn ich weiter in Scala komme, werden die funktionalen Aspekte dominanter werden, oder werde ich dazu neigen, nur OO-Code mit funktionalem Einfluss zu schreiben? Mit anderen Worten, wird Haskell meine Vorurteile härter und schneller herausfordern als Scala?
* Ich würde einen JVM-basierten Ansatz bevorzugen, aber ein weiterer Beitrag zu SO hat gezeigt, dass eine echte FP-Sprache nicht auf der JVM implementiert werden kann. * Bitte beachten Sie diesen BS nicht. Auf der JVM gibt es funktionale Sprachen aller Arten und Arten: Scala, Clojure (lispy), Yeti (ML-ish) und Frege, eine nicht-strikte, rein funktionale Sprache, die auf Kompatibilität mit Haskell abzielt. Haskell ist also eine gute Wahl zum Lernen, und Sie können später Dinge mit Frege auf die JVM anwenden. – Ingo