Welche Funktionalen Programmiersprachen sind heute das Maß der Dinge?
-
!rr!rr_. schrieb:
maximAL schrieb:
Aber das Maß der Dinge, die Sprache der Sprachen ist und bleibt Lisp
War vor allen anderen da,das stimmt aber nicht so ganz. Fortran, Lisp und Algol stammen alle aus der Zeit ca. 1957 - ca.1959.
Ja, Lisp war vor allen anderen heute noch wirklich relevanten Sprachen da
-
das war Assembler auch
Lisp ist für die FP das, was Algol für die blockstrukturierte, smalltalk und self für die klassen- und prototypenbasierte OO und forth für die "Zwei Stacks plus Dictionary"-Programmierung sind.
aber darum geht's ja in diesem Thread eig nicht.
-
Ganz klar: Clojure
-
Clojure-Fanboy schrieb:
Ganz klar: Clojure
Völliger Unsinn.
[quote"http://de.wikipedia.org/wiki/Clojure"]Die Sprache fördert einen funktionalen Stil[/quote]
Sie fördert einen Stil. Es ist aber keine funktionale Sprache. Funktional programmieren kannst du auch in C und C++ wenn du willst.
BTW: Ich habe noch nie so einen hässlichen Mischmasch aus Java und LISP gesehen.
-
Funktional Programmieren schrieb:
Aber was bei Funktionalen Programmiersprachen?
Soll ich Lisp, Haskell oder Erlang lernen oder vielleicht Scheme?Alle davon. Und noch mehr. Dauert ja nicht lange im Vergleich zu solchen komplizierten Monstern wie C++.
Wo liegen die Vor- und Nachteile der jeweiligen funktionalen Programmiersprachen?
Manche sind dynamisch getypt, andere statisch. Manche sind rein funktional, andere sind halb imperativ. Manche sind mit einer bestimmten Laufzeitumgebung verheiratet, andere nicht. Manche haben OO-Elemente, andere nicht. Manche sind gerade ziemlich populär, andere waren es mal, werden es sein oder auch nicht. Die Frage "Welche ist die beste" kann man nicht sinnvoll beantworten. Muss man auch nicht, s.o.
-
ölkjhgf schrieb:
Funktional programmieren kannst du auch in C und C++ wenn du willst.
möchtest du das mal vorführen, sagen wir am Beispiel des y-combinators?
-
Haskell, ist statistisch untermauert
ftp://ftp.geoinfo.tuwien.ac.at/wilke/BUP_Skriptsammlungen/Haskell/Funktionale_Prog_am_Bsp_Huskell.pdf
bzw. Original
http://www.cs.yale.edu/publications/techreports/tr1049.pdf
z.T auch hier:
http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependability-of.htmlund hat eine gute Infrastruktur und gute Lernressourcen wie etwa
http://www.haskell.org/haskellwiki/Haskell
http://book.realworldhaskell.org/
http://upload.wikimedia.org/wikipedia/commons/a/aa/Write_Yourself_a_Scheme_in_48_Hours.pdf
usw.
und hat vermutlich auch Zukunft, ähnlich wie damals C.
(und außerdem ist der Haskellinterpreter vom ghc (ghci) auch super - sozusagen modernes Basic)
Gui z.B.:
http://www.iba-cg.de/doc/hal2-gui-grapefruit.pdf
http://haskell.org/haskellwiki/GrapefruitAch, und wenn man eine gute Bibliothek zur Verfügung hat, z.B. in Assembler, macht man eigentlich fast auch nur noch funktional rum, call Fenster, call Ausgabe, call Exit.
-
Bei den Material zu Haskell hast du das beste vergessen: http://learnyouahaskell.com/ .
Und zu Funktional: Das definiert fast jeder leicht anders.
-
!rr!rr_. schrieb:
ölkjhgf schrieb:
Funktional programmieren kannst du auch in C und C++ wenn du willst.
möchtest du das mal vorführen, sagen wir am Beispiel des y-combinators?
Glücklicherweise hat das schon ein anderer gemacht:
http://rosettacode.org/wiki/Y_combinator#C.2B.2BIch hab's spaßeshalber mal nach Delphi portiert. Verrücktes Zeug, das
-
knivil schrieb:
Bei den Material zu Haskell hast du das beste vergessen: http://learnyouahaskell.com/ .
Hab ich gar nicht, ist doch alles bei haskell.org schnell auffindbar.
(aber hast schon recht)Und leicht erhellend könnte für manchen auch dieses hier sein:
http://research.microsoft.com/en-us/um/people/simonpj/papers/haskell-tutorial/index.htmAuch das deutschsprachige Buch:
http://www.amazon.de/Haskell-Intensivkurs-kompakter-funktionale-Programmierung-Xpert-press/dp/3642047173/
soll ganz gut sein, kenne ich aber nicht genau.Ocaml performante functionale Programmiersprache ist auch nicht schlecht, aber nicht so verfänglich wie Haskell, aus verschiedenen Gründen - und auch nicht so full functional wie Haskell - aber irgendwie Wissenschaftlers Liebling?
http://arxiv.org/pdf/1110.1029
http://benediktmeurer.de/2011/09/14/ocamlnat-benchmark/
http://caml.inria.fr/pub/docs/oreilly-book/index.html
(Hätte mir irgendwie viel besser gefallen, wenn die ARM-Prozessoren Metaocaml hardwaremäßig eingebaut hätten, aber watt solls...)
-
die frage ist so einfach zu beantworten wie die meisten in der it:
ES KOMMT DRAUF AN!!1
-
roflalter schrieb:
die frage ist so einfach zu beantworten wie die meisten in der it:
ES KOMMT DRAUF AN!!1
roflalter, kannst du bitte deine Forenaktivitäten auf "Lesen" beschränken?
Die letzten 10 Postings, die ich von dir gelesen habe, gingen mir auf die Nüsse.Zu deiner Verteidigung: Nicht nur deine Posts gingen mir auf die Nüsse.
Aber irgendwie scheint in jedem deiner Postings völliger ,arrogant und dumm formulierter Unsinn zu stehen.Halte dich bitte raus oder schreib anständige Sätze.
-
In welchen Fällen bieten sich die funktionalen Programmiersprachen an?
Also wann sollte man sie einer imperativen Prorammiersprache wie C/C++ oder Java vorziehen?Und welche der genannten funktionalen Programmiersprachen sind nem dem Kriterium "zum Lernen der funktionalen Programmierung" auch noch für den harten Arbeitsalltag für richtige Softwareprojekte geeignet?
Ich denke nämlich, daß es sinnvoll wäre, wenn ich schon eine funktionale Programmiersprache lerne, daß ich mir auch gleich eine aussuche, die ich auch später sinnvoll im Alltag einsetzen kann.
-
Funktional Programmieren schrieb:
Also wann sollte man sie einer imperativen Prorammiersprache wie C/C++ oder Java vorziehen?
Immer.
Und welche der genannten funktionalen Programmiersprachen sind nem dem Kriterium "zum Lernen der funktionalen Programmierung" auch noch für den harten Arbeitsalltag für richtige Softwareprojekte geeignet?
Alle.
Ich denke nämlich, daß es sinnvoll wäre, wenn ich schon eine funktionale Programmiersprache lerne, daß ich mir auch gleich eine aussuche, die ich auch später sinnvoll im Alltag einsetzen kann.
Nimm einfach eine und gut ist!
-
knivil schrieb:
Funktional Programmieren schrieb:
Also wann sollte man sie einer imperativen Prorammiersprache wie C/C++ oder Java vorziehen?
Immer.
Also dafür fehlt mir jetzt eine Begründung.
Und welche der genannten funktionalen Programmiersprachen sind nem dem Kriterium "zum Lernen der funktionalen Programmierung" auch noch für den harten Arbeitsalltag für richtige Softwareprojekte geeignet?
Alle.
Mir ging es nicht um die technische Frage, natürlich kann man in jeder programmiersprache ein bestimmtes Problem lösen, sondern welche auch gute Grundvorraussetzungen dafür bieten.
Also z.B. Fragen wie:
1. Qualität der Compiler
2. Support & Weiterentwicklung der Sprache und des Compilers
3. Verfügbarkeit von Framekworks, Bibliotheken usw. die die Arbeit erleichtern
4. Verfügbarkeit an qualifizierten Programmierern um größere Projekte auf Dauer zu stemmen
usw.Und da ist "Alle" sicherlich keine zutreffende Aussage, denn nicht jede Sprache efüllt die geforderten Bedingungen für solche Großprojekte.
Ich denke nämlich, daß es sinnvoll wäre, wenn ich schon eine funktionale Programmiersprache lerne, daß ich mir auch gleich eine aussuche, die ich auch später sinnvoll im Alltag einsetzen kann.
Nimm einfach eine und gut ist!
Haskel gefällt mir momentan am meisten, weil sie modular und stark und statisch typisiert ist und nicht zu alt ist, also ein modernes Design haben dürfte.
Verglichen mit Sprachen aus den 60ern.
-
4. Verfügbarkeit an qualifizierten Programmierern um größere Projekte auf Dauer zu stemmen
Gute und qualifizierte Softwareentwickler sind immer selten, das ist sprachunabhaengig. Die restlichen Kriterien werden von vielen Sprachen erfuellt, sofern sie nicht zu exotisch sind.
Verglichen mit Sprachen aus den 60ern.
Da du in keiner Erfahrung hast, wird das mit dem objektiv urteilen schwierig. Wenn du Haskell willst, dann nimm Haskell. Als erste funktionale Sprache wuerde ich davon aber abraten. Warum? Probiere es aus!
für solche Großprojekte
Entweder du willst lernen oder ein Produkt herausbringen. Fuer letzteres wird die am besten beherrschte genommen!
-
Als erste funktionale Sprache wuerde ich davon aber abraten. Warum? Probiere es aus!
Habe ich gemacht, hat wunderbar funktioniert. Was spricht denn dagegen?
-
Lerne Haskell.
Gründe:
- eine pure funktionale Sprache. Wenn du schon funktionales programmieren lernen willst, dann richtig und keinen Mischmasch.
- Selbst wenn du Haskell danach nie wieder verwenden würdest, hast du einige sehr interessante Konzepte gelernt, die deinen Stil und deine produktivität in anderen Sprachen verbessern.
-
Du könntest auch mit LISP anfangen aber davon rate ich ab.
Grund: Versuch es einfach.codeblöcke die in regelmäßigen abständen mit )))))))))))))))))))))))))))) finde ich nicht so toll.
-
kjhgfds schrieb:
roflalter schrieb:
die frage ist so einfach zu beantworten wie die meisten in der it:
ES KOMMT DRAUF AN!!1
roflalter, kannst du bitte deine Forenaktivitäten auf "Lesen" beschränken?
Die letzten 10 Postings, die ich von dir gelesen habe, gingen mir auf die Nüsse.Zu deiner Verteidigung: Nicht nur deine Posts gingen mir auf die Nüsse.
Aber irgendwie scheint in jedem deiner Postings völliger ,arrogant und dumm formulierter Unsinn zu stehen.Halte dich bitte raus oder schreib anständige Sätze.
bleib cool opa