Kannst du das eventuell etwas genauer ausführen? Clojure verwendet ja die JVM und irgendwie hat sich die Meinung verbreitet, dass man heutzutage eh genug Ressourcen hat und lieber verschwenderisch sein soll, damit der Code "besser" aussieht -- mein Professor in Programmierung ist Java-Programmierer und meint, man könne lieber mehr Hardware kaufen anstatt sich mit solchen Sachen aufzuhalten.wanne hat geschrieben:Und als C-Programmierer sehe ich schon wieder wo die massenweise unnötigen Speicherzugriffe stecken.
Noch ein weiterer Kandidat? Das Entscheiden wird immer schwieriger. Google Go finde ich zwar so auch sehr interessant, aber ziehe ich mittlerweile nicht mehr in Betracht, da ich lieber etwas rein funktionales will. OK, Clojure ist da auch nicht 100% konsequent, aber das ist in Ordnung.Liffi hat geschrieben:Imho bringt es einen immer weiter, eine Sprache zu lernen, mit deren Paradigma man noch nicht wirklich vertraut ist. Wenn du noch keine funktionale Programmiersprache kennst, lerne Clojure! (oder Haskell, Erlang, Scala,....).
All diese Sprachen sollten sich, aufgrund ihrer funktionalen Programmierweise, brauchbar parallelisieren lassen.
Deine Anforderungen werden vermutlich am besten durch Haskell:
- Entwicklung wird nicht durch eine Firma
- Hohe Parallelisierbarkeit
- Funktional
- GHC (eine Implementierung) kann sowohl interpretieren als auch in native Maschinensprache übersetzen. Falls letzteres nicht direkt geht, kann auch C Code erzeugt werden (keine Ahnung, wie gut der ist )
- kein Python
Haskell klingt interessant, mich würde hier aber interessieren, inwiefern es "parallel" besser beherrscht als Clojure -- denn da habe ich in letzter Zeit sehr häufig gelesen und gehört, dass Clojure hier einfach Spitzenreiter ist, obwohl ich mich natürlich frage, wieso, denn letztlich wird es ja auf Java Bytecode wieder abgebildet.