C/C++ wieder im kommen?
-
Mechanics schrieb:
Naja, die Meinung von Xin ist ja bereits allgemein bekannt.
Vor 10 Jahren klang dieses "Naja..." genauso von den Delphi-Freunden.
Und sie hatten recht. Java war derart gehypt, dass Delphi quasi weggefegt wurde.Mechanics schrieb:
Dass Java in den nächsten 5-10 Jahren stirbt halte ich für praktisch ausgeschlossen. Auch Delphi musste nicht sterben, das hat Borland komplett verbockt, aber zwischen Delphi und Java besteht immer noch ein Riesenunterschied.
Sun hat jetzt schon mehrere Versionen verbockt. Das letzte Mal, dass es mir deutlich aufgefallen ist, ist von 1.4 auf 1.5, seitdem verfolge ich das nicht mehr. Gelegentlich bekomme ich mit, dass Oracle sich nicht gerade beliebt macht. Es geht seinen Weg, langsamer weil aktuell kein Hype im Bereich der statisch typisierten Sprachen ansteht.
Mechanics schrieb:
Ich denke, wenn jemand gut C++ kann und einen entsprechenden Job sucht, wird er ihn auch finden, vor allem wo es kaum noch an Unis/FHs gelehrt wird und es nicht mehr so viel Nachwuchs gibt. ... Hat sich vielleicht höchstens was bei den Anzeigen geändert, weil die Firmen, die C++ Entwickler jetzt intensiver suchen müssen, weil von den Unis eben nichts mehr nachkommt.
Möglich. Microsoft scheint mir auch wieder mehr Richtung C++ zu gehen... C++11 ist da, C++14 in Arbeit, C++17 in Planung. C++ ist derzeit wieder mehr im Gespräch und Java drängt sich "gefühlt" schon länger nicht mehr so auf.
Es wird keinen Umschwung geben, eher eine ganz gemächlichen Wechsel. Und alles kann ganz anders werden, wenn Oracle Lärm macht oder ein neuer Kandidat ins Rennen geht.
-
Die Entwicklung vom C++11 hat 13 Jahre gebraucht.
C++14 sind nichts weiter als Korrekturen und bis C++17 sind es 5 Jahre. Bis dahin hat Oracle 3-4 Java-Versionen veröffentlicht und in 5 Jahren werden auch nicht von einem Tag auf dem anderen vorhandene Java-Software, die weiterentwickelt und gepflegt werden möchten, aussterben. Es sei denn ein Meteorit rast auf die Erde zu oder es passiert sonst irgendein Super-Gau.L. G.
Steffo
-
C++ hat halt den Vorteil, dass es ziemlich universell verwendbar ist, es viel Knowhow gibt, und es sehr portabel ist. Natürlich hat C++ stark eingebüßt. Anfang der 90er war es ja fast die Sprache für alles. Das ist definitiv nicht mehr der Fall. Aber die ganzen C++-Alternativen sind halt oft auf einen Bereich isoliert. Java findet man ja hauptsächlich in irgend welche ERP-Sachen, C# sind halt hauptsächlich Windows-Desktop-Anwendungen, im Web hat C++ nie wirklich Fuß gefasst. Und auch neuere Programmiersprachen, die als C++-Alternativen angepriesen werden, sind halt oft schon limitiert in ihren Anwendungszwecken. Go hat zB einen zwingenden Garbagecollector, was einfach wieder in einigen Bereichen nicht gewünscht ist. Die einzig neuere Sprache die wohl so ähnlich universell wie C++ ist, scheint Rust zu sein. Aber Rust ist noch lange nicht fertig.
Auch was Portabilität angeht, ist C++ einfach ungeschlagen. Wenn es um Endbenutzergeräte geht, dann kann vielleicht noch JavaScript mithalten von der anderen Seite. Aber mit JavaScript hat man halt kaum Zugriff auf native Funktionen. Wenn man dagegen den Kern der Anwendung in C++ schreibt, dann kann man ihn ohne Probleme auf Windows, Linux, OSX, iOS, WindowsPhone, Android benutzen. Für die GUI muss man dann halt oft auf systemspezifische Sprachen wie Objective-C++, Java, oder C# zurück greifen. Aber die Idee eine GUI für alle Systeme zu schreiben hat sich ja eh für Endbenutzerzwecke als Schwachsinn herausgestellt.
Und obwohl C++ keine Websprache ist, so ist es doch erstaunlich, dass es ein zentraler Teil von Webfirmen wie Google, Facebook und co ist.
Auch wenn der Java-Hype vorbei ist, so ist Java natürlich nicht tot. Es ist halt einfach das neue COBOL. Es wird überall in Firmen für langweilige Dinge eingesetzt und es ist nicht wirklich spannend. Wenn man Java als Plattform meint, dann darf man aber Clojure und Scala nicht vergessen.
-
Xin schrieb:
Vor 10 Jahren klang dieses "Naja..." genauso von den Delphi-Freunden.
Ich hab das damals eigentlich genau andersrum wahrgenommen. Die Delphi Entwickler wurden immer als Müslifresser belächelt, die richtigen Männer haben C++ gemacht, und Java war voll der Hype. Und natürlich immer das Argument, C++ ist performanter als Delphi. Damals hab ich viel in Delphi gemacht (noch als Schüler, nicht professionell) und es war in jeder Hinsicht schnell genug und Performance hat mich null interessiert. Seitdem sind die Rechner mindestens 20 mal schneller geworden, und das Argument Performance interessiert mich genauso wenig wie damals.
Aber Delphi war halt eine nette Sprache damals, find ich. Java war für den Desktop ungeeignet (genauso wenig wie heute) und C++ war nicht die Sprache der Wahl für Leute, die das nur nebenbei gemacht haben. Damals gabs nicht so viele professionelle Entwickler. Sehr viel Software wurde von Domänenexperten und nicht von Informatikern erstellt. Und die sind mit Delphi wesentlich besser zurechtgekommen, als mit C++. Und es gab schon viel, was man einfach verwenden konnte, z.B. Reporting Komponenten oder Charts, da würd ich in C++ auch heut noch lang suchen. Auch ich selber hätt mich wohl ziemlich sicher nie fürs Programmieren interessiert, wenn ich mit C++ angefangen hätte. Erst viel später war ich bereit, mich darauf einzulassen und noch später ist es bei mir zur Sprache der Wahl geworden.
-
rüdiger schrieb:
C++ hat halt den Vorteil, dass es ziemlich universell verwendbar ist, es viel Knowhow gibt, und es sehr portabel ist.
Und mittlerweile hat C++ vor allem den Vorteil, dass es die wohl "sicherste" Mainstreamsprache ist, was Ressourcenverwaltung angeht.
PS: C interessiert eigentlich immer weniger. Insofern wird nicht C/C++ gepusht, sondern eben C++. In Stellenanzeigen scheint sich der Ausdruck C/C++ wohl einfach irgendwann eingebürgert zu haben, als er vielleicht noch etwas weniger falsch war.
-
Java ist sicher nicht in 5 Jahren tot. Vielleicht auch noch nicht in 10 Jahren. Aber das Ende ist nah. Und das ist gut so.
-
Steffo schrieb:
Die Entwicklung vom C++11 hat 13 Jahre gebraucht.
Dafür sind schicke Ideen drin.
Java ist C++98 abzüglich der interessanten Ideen. Um gegen Java anzustinken reicht C++98 also auch heute noch.Steffo schrieb:
Bis dahin hat Oracle 3-4 Java-Versionen veröffentlicht
Interessiert das noch wirklich?
Ich verfolge es nicht mehr wirklich, aber mir scheint, dass neue Java Versionen nicht willkommen sind, sondern eher gefürchtet. Die eine Hälfte depreciated, einiges inkompatibel und diverses redundant in verschiedenen Geschmacksrichtungen im Framework.Steffo schrieb:
und in 5 Jahren werden auch nicht von einem Tag auf dem anderen vorhandene Java-Software, die weiterentwickelt und gepflegt werden möchten, aussterben.
Das hast Du recht, Fortran forever. :->
Mechanics schrieb:
Xin schrieb:
Vor 10 Jahren klang dieses "Naja..." genauso von den Delphi-Freunden.
Ich hab das damals eigentlich genau andersrum wahrgenommen. Die Delphi Entwickler wurden immer als Müslifresser belächelt, die richtigen Männer haben C++ gemacht, und Java war voll der Hype. Und natürlich immer das Argument, C++ ist performanter als Delphi. Damals hab ich viel in Delphi gemacht (noch als Schüler, nicht professionell) und es war in jeder Hinsicht schnell genug und Performance hat mich null interessiert.
Ich habe vor 12 Jahren auch Delphi programmiert... Das Performance-Argument ist bei Delphi totaler Blödsinnn... wenn man Delphi richtig quält, liefert es C++-Fehlermeldungen. ^^
Delphi ist C++Builder, nur mit Object-Pascal-Syntax.Ansonsten stimme ich der Beschreibung (Müslifresser) aber zu. Ich habe Delphi auch gehasst. Dann kam Java und seitdem denke ich, dass Delphi doch nicht so schlecht war. ^^
Mechanics schrieb:
Auch ich selber hätt mich wohl ziemlich sicher nie fürs Programmieren interessiert, wenn ich mit C++ angefangen hätte. Erst viel später war ich bereit, mich darauf einzulassen und noch später ist es bei mir zur Sprache der Wahl geworden.
Ich denke, C++ weiß man erst zu schätzen, wenn man viel programmiert hat, zum Selbststudium ist C++ wirklich nicht gerade perfekt. Mit einem guten Lehrer schon oder einem guten Tutorial und Forum finde ich das aber durchaus. Und Delphi war die Sprache, die am dichtesten hinter C++ her war, leider zuviel Prosa - imho.
Ich finde die Reaktionen interessant... Vor drei Jahren wurde das konsequent abgelehnt, dass Java auch nur sterben könnte... das klingt hier inzwischen schon irgendwie einstimmend. ^^
-
Xin schrieb:
Ansonsten stimme ich der Beschreibung (Müslifresser) aber zu. Ich habe Delphi auch gehasst.
Die Sprache an sich war natürlich ziemlicher Müll. Die Syntax find ich so im nachhinein recht hässlich (aber das ist Gewohnheitssache, damals fand ichs durchaus ansprechend), keine Templates oder Generics, jahrelang keine gescheite Unicode Unterstützung. Dafür hat man schnell Ergebnisse gesehen, und man konnte schnell und relativ sauber überschaubere Projekte realisieren. Also das was man heute mit C# macht (ich würd übrigens sagen, das hat Delphi weggefegt, und nicht Java).
Die Frage, ob Java stribt, finde ich eigentlich irrelevant (wobei ich das nicht glaube). Selbst wenn, wird was ähnliches den Platz einnehmen, oder vielleicht sowas wie Scala, aber sicher nicht sowas wie C++. Die meisten Informatiker und Entwickler können kein C++ und brauchen das auch nicht. Find dich damit ab. Man kann auch wunderbar ohne arbeiten. Von dem her werden die meisten auch in Zukunft ohne C++ arbeiten. Ob sie dann Java, C# oder Scala benutzen ist ja relativ egal, die Sprachen kann man verstehen und lernen, wenn Java kann. C++ hingegen können die hingegen nicht so ohne weiteres lernen und wollen das auch nicht und brauchen das nicht. Daran wird weder C++11 oder C++17 was ändern.
Dir kanns aber egal sein, glaub nicht, dass man in überschaubarer Zukunft Probleme haben wird, einen Job als C++ Entwickler zu finden.
-
@Mechanics: Ich glaub nicht, dass Scala massentauglich ist. Es verfolgt ein anderes (funktionales) Paradigma und die Abstraktion kann einen schon zu schaffen machen. Ich finde es als Scala-Anfänger schon erstaunlich, was man so alles mit wenigen Zeilen Code ausdrücken kann, aber es kommt schon vor, dass ich 5 Minuten über ein Beispiel nachdenke...
Da scheint mir C++ mit seiner imperativen Herangehensweise deutlich massentauglicher zu sein.
-
Steffo schrieb:
@Mechanics: Ich glaub nicht, dass Scala massentauglich ist. Es verfolgt ein anderes (funktionales) Paradigma und die Abstraktion kann einen schon zu schaffen machen. Ich finde es als Scala-Anfänger schon erstaunlich, was man so alles mit wenigen Zeilen Code ausdrücken kann, aber es kommt schon vor, dass ich 5 Minuten über ein Beispiel nachdenke...
Da scheint mir C++ mit seiner imperativen Herangehensweise deutlich massentauglicher zu sein.Hmm, ich glaub, du bist da nicht objektiv, weil du C++ kannst Ja, einige Konstrukte von Scala sind nicht ganz leicht zu verstehen. Aber man muss es ja nicht auf die Spitze treiben und komplett funktional oder einfach "anders" programmieren, man kann mit Scala ganz normal programmieren und ein paar nette Features nutzen, die Java nicht bietet, so mach ich das meistens.
Das Problem mit C++ hingegen ist, dass es viel zu technisch ist, und die Leute, die das noch nicht können, sind auch überhaupt nicht bereit, sich darauf einzulassen. Das habe ich bei sehr vielen Kollegen beobachtet, die studiert haben und jahrelange Berufserfahrung haben und auch wirklich gut in dem waren, was sie tun - man kann Informatiker ja nicht danach beurteilen, ob er C++ kann. Die hätten wohl sowieso keine Probleme mit funktionaler Programmierung, weil sie das an der Uni hatten, aber das ist sogar nebensächlich, sobald es um abstrakte Konzepte geht, waren die bereit, sich darauf einzulassen und sich reinzudenken. Aber sobald es etwas technisches war, was so an sich keinen Sinn macht und einfach nur umständlich ist, wars gleich kompletter Bullshit und es war vorbei. Ich musste mal in einer Firma ein C++ Projekt warten, alle anderen waren Java und C# Entwickler. Sobald es um C++ ging, war keiner bereit, sich das überhaupt anzuschauen. Ich würd aber nie behaupte, dass es schlechte Entwickler waren. Die brauchen einfach kein C++ und werden auch nie bereit sein, sich damit zu beschäftigen. Dazu gibts auch überhaupt keinen Grund, technische Sprachen sind out, bei den meisten modernen Sprachen muss man sich mit technischen Details überhaupt nicht beschäftigen und kann sich auf das eigentliche Problem konzentrieren ohne zu befürchten, irgendwas falsch zu machen, weil die Sprache nicht so funktioniert, wie man das intuitiv erwartet. Welche Sprache dann auch Java evtl. als Mainstream ablösen mag, die wird C++ sicher nicht ähneln.
-
ewqeqw schrieb:
Hallo,
hab heute mal die Stellenangebote durchgeschaut, und dabei ist mir aufgefallen:
Der Anteil von C/C++ Stellen ist wieder recht hoch, ca 1/3 C/C++, 1/3 .NET, und dann halt der Rest wie Java, PHP und sonstiges.
Kann mich erinnern, dass es Zeiten gab, wo hauptsächlich .Net und C# gesucht wurde.Eure Einschätzung?
Wenn ich mir die Statistik von Gulp angucke, dann sehe ich bei den hier betrachteten Programmiersprachen eigentlich keine wirkliche Entwicklung in dem Sinne, dass eine davon besonders an Relevanz gewinnt oder verliert.
Ich sage allerdings dazu, dass Gulp sicherlich nur ein bestimmtes Marktsegment betrachtet, nämlich den Markt für Selbständige. In anderen Marktsegmenten wird es andere Entwicklungen geben. Letztendlich hängt es wohl sehr stark davon ab, in welcher Branche man tätig ist. In einigen Branchen ist die eine Programmiersprache relevanter, in anderen die andere. Wenn man meint, dass es in letzter Zeit einen neuen Trend gibt, der zu einer Veränderung der Relevanzen der einzelnen Programmiersprachen führt, dann sollte man allerdings auch dazu sagen, was man als Treiber dieses Trends ansieht. Wenn man so eine Ursache nicht benennen und begründen kann, dann würde ich im Allgemeinen davon ausgehen, dass es sich um subjektive Einbildung handelt.
Ursachen wären aus meiner Sicht etwas wie...
- ...eine bestimmte Branche gewinnt oder verliert insgesamt an Relevanz und deshalb auch die Programmiersprachen, die innerhalb dieser Branche stark sind.
- ...es gab in jüngerer Vergangenheit starke Änderungen innerhalb einer Sprache, die diese Sprache plötzlich viel interessanter macht. Das können neue Sprachmittel sein oder es kann auch die Infrastruktur an Werkzeugen und Bibliotheken betreffen, die rund um die Sprache existieren.
- ...das vorhandene Know-How in einer Sprache unterliegt momentan großen Änderungen, weil zum Beispiel die Universitäten eine Sprache als Lehrsprache entdeckt haben.
- ...eine Sprache wird von bestimmten Unternehmen aus politischen/wirtschaftlichen Gründen besonders gefördert.
- ...oder ähnliches.
Mir ist nicht bekannt, dass es in dieser Hinsicht momentan irgendwo besonders starke Umbrüche gibt. Man könnte sagen, dass der Java-Hype inzwischen vorbei ist. Aber das war er vor 5 Jahren auch schon, das hat also sicherlich keine direkten Auswirkungen auf momentane Entwicklungen. Java hat seinen festen Platz unter den Programmiersprachen. ...und zwar nicht nur durch alten Code. ...ebenso C++. Was C# betrifft kann ich nichts sagen. Da gab es vor ein paar Jahren einen Hype, aber wenn man den Thread hier so verfolgt, dann scheint das Unternehmen, das C# so stark gepusht hat, inzwischen eine etwas andere Strategie zu verfolgen.
EDIT: Sorry, irgendwie versteht die Forensoftware den Link oben nicht. Aber man kann ihn natürlich einfach in die Adresszeile des Browsers kopieren.
-
Mechanics schrieb:
aber das ist sogar nebensächlich, sobald es um abstrakte Konzepte geht, waren die bereit, sich darauf einzulassen und sich reinzudenken. Aber sobald es etwas technisches war, was so an sich keinen Sinn macht und einfach nur umständlich ist, wars gleich kompletter Bullshit und es war vorbei.
Was meinst du denn mit technisch? Dass die Sprache komplizierter ist? Weil technisch im Sinne von "nah an der Hardware" finde ich C++ jetzt nicht gerade. Oder besser gesagt merkt man davon doch eigentlich gar nichts, wenn man einfach nur Anwendungen programmiert. Binäre Operatoren gibt es auch in anderen Sprachen, aber wie oft die genutzt werden hängt halt von dem ab was man programmiert, nicht in welcher Sprache.
Gregor schrieb:
...das vorhandene Know-How in einer Sprache unterliegt momentan großen Änderungen, weil zum Beispiel die Universitäten eine Sprache als Lehrsprache entdeckt haben.
Wenn Universitäten signifikanten Einfluss auf das Sprachen Know-How haben, graut es mir vor der Realität.
-
@Mechanics: C++ Code kann ich zwar ein bisschen lesen, aber können, tu ich das nicht wirklich (aber ein C mit Klassen würde ich noch hinbekommen). Ich hab im Studium C gelernt.
Jedenfalls finde ich C++ angenehmer und massentauglicher als das hier:package weektwo object ProductFunctionReturner { def main(args: Array[String]): Unit = { println(fact(5)) } def product(f: Int => Int) (a: Int, b: Int) : Int = mapReduce(f, (x, y) => x * y, 1)(a, b) def fact(n: Int): Int = product(x => x)(1, n) def mapReduce(f: Int => Int, combine: (Int, Int) => Int, zero: Int) (a: Int, b: Int) : Int = if (a > b) zero else combine(f(a), mapReduce(f, combine, zero)(a+1, b)) }
Aber vielleicht ist es wirklich so wie du sagst und man kann mit Scala auch mainstreamtauglicher programmieren. Bin noch ein Anfänger.
L. G.
Steffo
-
Mechanics schrieb:
Also das was man heute mit C# macht (ich würd übrigens sagen, das hat Delphi weggefegt, und nicht Java).
Als ich mit C# anfing (C#1.1), war Delphi eigentlich vorrangig noch zur Wartung vorhandener Software genutzt. So zumindest mein Empfinden.
Mechanics schrieb:
Die Frage, ob Java stribt, finde ich eigentlich irrelevant (wobei ich das nicht glaube). Selbst wenn, wird was ähnliches den Platz einnehmen, oder vielleicht sowas wie Scala, aber sicher nicht sowas wie C++. Die meisten Informatiker und Entwickler können kein C++ und brauchen das auch nicht. Find dich damit ab.
Da sich die meisten nicht dafür interessiere, was ich denke, sondern sich ausschließlich an meinen kontroversen Aussagen hochziehen, muss ich Dir sagen, dass ich die Zukunft von C++ ebenfalls eine Endmarke sehe. Diese liegt allerdings deutlich hinter Java.
Java stirbt, das ist ein Prozess, kein Zeitpunkt. Fortran ist auch nur noch ein Zombie, aber noch nicht ausgestorben. Relevant ist das nur für neue Projekte, die eben nicht mehr in Java beginnen oder Fortran beginnen.
Dass Entwickler kein C++ können ist eine Katastrophe - nicht wegen C++, sondern weil sie Dinge wie Templates, Mehrfachvererbung, Const-Correctness, C++-Referenzen nicht mehr denken können, also auch nicht mehr in Ihren Architekturen formulieren können.
Hier geht regelrecht kulturelles Wissen der Informatik verloren. "Java ist der Mehrfachvererbung ihr Tod."
Es geht ohne C++. Aber es ist ein architektonischer Rückschritt.Trotzdem muss etwas kommen, was die Vorteile von Java und C# mit C++ verbindet. Und ich vermute, dass das C++ zerreißen würde, weil die Hardcore-C++-Leute und Anwendungsentwickler sich gegenseitig in der gleichen Sprache aufreiben würden.
Deswegen - und nur deswegen wird C++ diese Wende nicht überleben können, sondern ebenfalls abstürzen. Den Beginn des Sterbeprozesses sehe ich aber in einem Zeitrahmen von 15-30 Jahren. Das ist zeitlich zu weit weg, als das sich da derzeit irgendwer für interessieren würde.Mechanics schrieb:
Dir kanns aber egal sein, glaub nicht, dass man in überschaubarer Zukunft Probleme haben wird, einen Job als C++ Entwickler zu finden.
Auch deswegen rate ich jedem ernsthaften Entwickler C++ zu lernen.
@Steffo: Bin auch Scala-Anfänger, und sehe die Sache der Massentauglichkeit ähnlich. Scala ist interessant, aber der Einstieg in die Programmierung sehe ich nicht im funktionalen Bereich. Also muss eine Sprache mindestens ein imperatives Eingangsportal haben oder darauf hoffen, dass fortgeschrittene Entwickler sich für alternative Ansätze interessieren. So erscheinen mir die meisten Einsteiger funktionaler Sprachen eher aus Neugier Scala oder Haskell zu lernen, nicht um Probleme zu lösen.
-
Gregor schrieb:
Mir ist nicht bekannt, dass es in dieser Hinsicht momentan irgendwo besonders starke Umbrüche gibt.
Vielleicht haben wir es einfach mit einer Art Sättigungseffekt zu tun. Programmiersprachen gibt es nun schon eine Weile, irgendwann flacht die Kurve der Enwicklung ab. Was nicht heißt, dass es nicht mal wieder Technologiesprünge geben könnte.
Gregor schrieb:
aber wenn man den Thread hier so verfolgt, dann scheint das Unternehmen, das C# so stark gepusht hat, inzwischen eine etwas andere Strategie zu verfolgen.
Am Anfang dieses Threads wurden zwei Links zu Artikel von Herb Sutter gepostet. Wenn man sich die so anschaut, wird der Strategiewechsel verständlich. Eine der Schlussfolgerungen, insbesondere des zweiten Artikels, ist ja im Prinzip, dass irgendwann in Zukunft der Punkt kommt, wo weder die Prozessoren noch viel schneller werden, noch über weitere Parallelisierung signifikante Geschwindigkeitszuwächse erreicht werden.
We’re being asked to do more (new experiences like sensor-based UIs and augmented reality) with less hardware (constrained mobile form factors and the eventual plateauing of scale-in when Moore’s Law ends).
Wenn man sich die Macher der neuen Standard C++ Webseite ansieht (MS, Intel, IBM, HP, Google, ...)
http://isocpp.org/about
sind da einige dabei, die auch mit eigenen Sprachen unterwegs sind.Aber offenbar ist man sich einig, dass es Anwendungen gibt, wo C++ die beste Wahl ist.
Man stelle sich nur Googles Brille vor, da sind die Resource wahrscheinlich so beschränkt, dass man einen viel schlankeren Ansatz als Android braucht.
Auf der anderen Seite, wenn man aus seinen Cloud Servern ein paar Prozent mehr Leistung herausquetschen kann, spart man gleich Millionen an Stromkosten.
-
Ich würde euch übrigens bitten, hier keinen Sprachenflamewar vom Zaun zu reißen. Danke
-
Es verfolgt ein anderes (funktionales) Paradigma
Bei Scala steht 'funktional' nicht im Vordergrund.
Jedenfalls finde ich C++ angenehmer und massentauglicher als das hier
Die Masse ist dumm. Ziel: Durchschnitt? Natuerlich ist map+fold (map/reduce, ... etc.) fuer die meisten gewoehnungsbeduerftig, weil sie es eben nicht gewohnt sind. Wer mal was anderes lesen moechte: Funktionale Programmierung: Sprachdesign und Programmiertechnik, dann gibt es die Video-"Vorlesung" auf Microsofts Channel 9 zu Programming in Haskell oder Pearls of Functional Algorithm Design. Der Klassiker: Structure and Interpretation of Computer Programs plus Videovorlesung vom MIT.
Trotzdem muss etwas kommen, was die Vorteile von Java und C# mit C++ verbindet.
Ich wuerde ja sagen: Lisp. Aber normalerweise ist nicht die Sprache entscheidend sondern der zugehoerige Bibliotheksumfang.
So erscheinen mir die meisten Einsteiger funktionaler Sprachen eher aus Neugier Scala oder Haskell zu lernen, nicht um Probleme zu lösen
Probleme loest man mit Mitteln und Werkzeugen, die man beherrscht. Deine Argumentation ist .. unverstaendlich.
Ich würde euch übrigens bitten, hier keinen Sprachenflamewar vom Zaun zu reißen
Tut mir leid, meine Silberkugeln sind bereits gegossen und muessen verbraucht werden.
Auch deswegen rate ich jedem ernsthaften Entwickler C++ zu lernen.
Ich rate zu Lisp. Dann gibt es auch noch ML. Haskell ist vielleicht zu "theoretisch". Forth bzw. Factor sah auch sehr interessant aus.
-
LMAO ich bin kein C++ Entwickler, sehe nicht mal sein tot.
Spielen wir Puzzelsuppe, wir schneiden unsere Meinung in Puzzelstücken und stecken sie solange zusammen, bis sie passen? Na dann mal viel Spaß.
-
knivil schrieb:
Ich rate zu Lisp.
Keine schlechte Wahl, es hat mit C++ gemeinsam, dass es keiner Firma "gehört". Was eine wichtige Eigenschaft einer neuen Mainstream Sprache sein muss. Ein Grund warum sich die großen der Branche jetzt hinter ISO C++ scharen, dürfte sein, dass sie gelernt haben, dass Eigengewächse nicht so viel Reichweite erzeugen.
ML und Haskel dürften deshalb verbrannt sein, weil F# teilweise von ML inspiriert ist und auch noch von einem Teil der ursprünglichen Haskell Entwickler, die jetzt bei MS arbeiten.
Forth ist cool, war eine der ersten Sprachen mit der ich gearbeitet habe, noch unter CP/M. Aber wie Taschenrechner von HP, ist das sicher Geschmackssache.
-
nn schrieb:
knivil schrieb:
Ich rate zu Lisp.
Keine schlechte Wahl, es hat mit C++ gemeinsam, dass es keiner Firma "gehört". Was eine wichtige Eigenschaft einer neuen Mainstream Sprache sein muss. Ein Grund warum sich die großen der Branche jetzt hinter ISO C++ scharen, dürfte sein, dass sie gelernt haben, dass Eigengewächse nicht so viel Reichweite erzeugen.
Verstehe ich nicht. Java "gehört" zum Beispiel einer Firma und ist trotzdem unglaublich erfolgreich. Auch auf lange Sicht. Guck Dir demgegenüber mal Sprachen wie D an.
Wenn ein großes Unternehmen hinter einer neuen Sprache steht, dann heißt das auch, dass jede Menge Manpower in diese Sprache gesteckt wird. Das Unternehmen hat ein Interesse am Erfolg dieser Sprache und sorgt deshalb dafür, dass eine gute Infrastruktur für diese Sprache entsteht. Dann entsteht eine gute Standardbibliothek, dann entstehen gute Entwicklungswerkzeuge und so weiter.
Ich würde sogar sagen, dass eine neue Sprache inzwischen nur noch dann eine Chance hat, wirklich relevant zu werden, wenn ein großes Unternehmen dahintersteht.