Welcher Sprache gehört die Zukunft?
-
rüdiger schrieb:
r0nny schrieb:
imho ist lisp die zukunft, da lisp am mächtigsten ist
Lisp wird es auch in den nächsten 50 Jahren noch geben. Ganz klar. Aber Lisp ist auch zu ungewohnt für "dumme" Programmierer. Daher leider keine Chance
(wäre imho sogar eine Gefahr für "dumme" Programmierer, weil Lisp zu effizient und produktiv in der Entwicklung ist)
Die wenigsten wollen aber auch einsehen, dass eine Programmiersprache sich sozusagen nicht nur durch sich selbst definiert. Du kannst es dir als Projektleiter einfach nicht leisten ein Projekt auszuschreiben, bei dem Lisp verwendet wird, auch wenn die Sprache noch so effizient und produktiv ist. Man müsste wahrscheinlich einen Großteil der angestellten Programmier umschulen oder gar ersetzen. Da verwende ich doch lieber "Mainstream"-Sprachen und schreib mir gegebenenfalls Tools, die auch diese Sprachen effizienter und produktiver gestalten.
Übrigens programmiere ich auch nicht in Lisp. Bin ich jetzt "dumm", weil ich den Kosten-/Nutzenfaktor abwäge und dann entscheide, wo ich mich weiterbilde? Ich bin bei einem Bewerbungsgespräch auch noch nie gefragt worden, ob ich Lisp programmieren kann, sind also auch die entsprechenden Firmen "dumm"? Ausschreibungen verlangen seltsamerweise auch so gut wie nie (ich will ja nicht nie sagen, auch wenn ich noch nie derartiges gesehen habe) nach Lisp-Kenntnissen.
Vielleicht hast du selbst bemerkt, dass sich daraus ein Teufelskreislauf entwickelt, da ich mich aufgrund von Nachfragen bei Unternehmen weiterbilde und die lieber auf Technologien setzen, bei denen eine gewisse Expertise im Personal vorhanden ist. Diesen Kreislauf zu durchbrechen wird sich auch für D nicht einfach gestalten.
-
Toll wäre natürlich ein tool, in dem ein Projekt absolut aus allen Programmiersprachen bestehen darf, welches sich selbst um die Schnittstellen kümmert, dann können auch goße Projekte von allen mitarbeitern in ihrer am besten beherrschten Sprache geschrieben werden. Das würd zwar einige prizipien der einzelnen Programmiersprachen über den haufen werfen (Plattformunabhängigkeit bei Java etc), aber vorteilhaft wäre es allemal (wenns nicht zu Kompliziert wird), denn dann können auch Lispler (falls es die wirklich noch geben sollte) mitarbeiten.
-
Entwicklungen in die Richtung gibt es doch schon - Stichwort .NET
Wobei, im Endeffekt mußt du nur sicherstellen, daß die Compiler aller beteiligten Sprachen ein einheitliches Datenformat als Ausgabe liefern. Das heißt, wenn die vom C++ Compiler gelieferten Objektdateien genauso aussehen wie die von Pascal (und du eine Möglichkeit hast, Pascal-Includes und C++ Header ineinander zu transformieren), kannst du schon beides miteinander kombinieren.
-
Der Durchschnitt schrieb:
Übrigens programmiere ich auch nicht in Lisp. Bin ich jetzt "dumm", weil ich den Kosten-/Nutzenfaktor abwäge und dann entscheide, wo ich mich weiterbilde?
Ja.
Der Durchschnitt schrieb:
Ich bin bei einem Bewerbungsgespräch auch noch nie gefragt worden, ob ich Lisp programmieren kann, sind also auch die entsprechenden Firmen "dumm"?
Jupp, saudumm!
-
Krux schrieb:
Toll wäre natürlich ein tool, in dem ein Projekt absolut aus allen Programmiersprachen bestehen darf, welches sich selbst um die Schnittstellen kümmert, dann können auch goße Projekte von allen mitarbeitern in ihrer am besten beherrschten Sprache geschrieben werden.
Sowas kann nur funktionieren, wenn es klar definierten Code-Ownership gibt, und selbst da zweifle ich es an, da man sich beim Debuggen ja dann trotzdem irgendwie durch diesen Quellcode "kämpfen" muss. Man könnte entweder den Code in der Sprache darstellen, in der er geschrieben wurde, oder durch Reverse Engineering in die persönlich bevorzugte Sprache umwandeln. Reverse Engineering klingt ja anfangs wie die ideale Lösung, aber spätestens bei Konstrukten, die es in der einen Sprache gibt, in der anderen allerdings nicht, führt das wohl zu mehr Verwirrung, als man eigentlich damit lösen wollte. Bei .NET ist dieses Problem nicht wirklich vorhanden, da die Sprachen einfach kaum mehr merkliche Unterschiede haben. Insofern kann man aber auch kaum mehr persönliche Präferenzen haben, was wiederum die Hemmschwelle deutlich senkt eine andere - eben die für das Projekt festgelegte - Sprache zu verwenden.
Lügner schrieb:
Der Durchschnitt schrieb:
Übrigens programmiere ich auch nicht in Lisp. Bin ich jetzt "dumm", weil ich den Kosten-/Nutzenfaktor abwäge und dann entscheide, wo ich mich weiterbilde?
Ja.
Der Durchschnitt schrieb:
Ich bin bei einem Bewerbungsgespräch auch noch nie gefragt worden, ob ich Lisp programmieren kann, sind also auch die entsprechenden Firmen "dumm"?
Jupp, saudumm!
Ich finde es ehrlich gesagt schade, dass du eine ernst gemeinte Antwort mit Ironie runterziehen willst. Das senkt nur die Hemmschwelle für weitere (wenn auch registrierte) Trolle ähnlich geistreiche Kommentare abzulassen.
-
Der Durchschnitt schrieb:
Vielleicht hast du selbst bemerkt, dass sich daraus ein Teufelskreislauf entwickelt, da ich mich aufgrund von Nachfragen bei Unternehmen weiterbilde und die lieber auf Technologien setzen, bei denen eine gewisse Expertise im Personal vorhanden ist. Diesen Kreislauf zu durchbrechen wird sich auch für D nicht einfach gestalten.
Teufelskreislauf? Ich kenn nur den Teufelskreis... (Jaja ich bin ein Korinthenkacker.)
Aber um mal auf deine Wi-Argumente in Wi-Speak zu antworten: Das ergibt Arbitragemöglichkeiten.
-
Mr. N schrieb:
Der Durchschnitt schrieb:
Vielleicht hast du selbst bemerkt, dass sich daraus ein Teufelskreislauf entwickelt, da ich mich aufgrund von Nachfragen bei Unternehmen weiterbilde und die lieber auf Technologien setzen, bei denen eine gewisse Expertise im Personal vorhanden ist. Diesen Kreislauf zu durchbrechen wird sich auch für D nicht einfach gestalten.
Teufelskreislauf? Ich kenn nur den Teufelskreis... (Jaja ich bin ein Korinthenkacker.)
Aber um mal auf deine Wi-Argumente in Wi-Speak zu antworten: Das ergibt Arbitragemöglichkeiten.
Ob es für einen Lisp-Programmierer wirklich möglich ist risikofrei mehr Gewinn zu erzielen als z.B. ein Java- oder .NET-Programmierer, mag vielleicht in der Theorie stimmen, aber ich bezweifle, ob sich das auch wirklich in der Praxis umsetzen lässt. Sucht man beispielsweise mit dem GULP Roboter nach Lisp Projekten erhält man keinen einzigen Treffer und bei keinem einzigen Projekt lässt sich schlecht Gewinn erzielen (Mir ist natürlich klar, dass eine Plattform für freiberufliche IT-Experten nicht repräsentativ ist, aber ein Indiz ist es trotzdem).
Ich möchte hier allerdings auch nicht Lisp schlechtreden, auch wenn das bisher den Anschein hat, sondern nur klarstellen, dass Programmierer nicht zwangsweise "dumm" sind, wenn sie sich auf Mainstream-Sprachen konzentrieren.
-
Es ist sogar zumeist so, dass der Mainstream und das Beste nicht identisch sind. Beispielsweise war MS Winword zu Anfang der Neunziger nicht das beste Textverarbeitungsprogramm, aber es war von Microsoft. Wer sich damals z.B. für WordPerfect, Text5 (IBM) oder AmiPro entschied, hatte verloren, nämlich gegen Microsoft, den Riesen aus Seattle. Daher ist es ganz einfach: Man folge Microsoft. Egal, was sie machen, es ist "richtig". Egal, was sie anbieten, man greife zu und nutze es ...
... oder man verwendet das Beste, dann muss man flexibel bleiben und sich öfter umgewöhnen.
-
Der Durchschnitt schrieb:
Ich möchte hier allerdings auch nicht Lisp schlechtreden, auch wenn das bisher den Anschein hat, sondern nur klarstellen, dass Programmierer nicht zwangsweise "dumm" sind, wenn sie sich auf Mainstream-Sprachen konzentrieren.
Ich möchte hier allerdings nur klarstellen, dass das auch niemand behauptet hat. Wenn du meinst ich hätte so etwas gesagt, dann hast du meinen Beitrag falsch gelesen.
-
viele sprachen haben ihre daseinsberechtigung, weil sie für bestimmte aufgabengebiete geschaffen wurden. trotzdem denke ich, dass den mehr oder minder "plattformunabhängigen" sprachen die zukunft gehören wird. denn die systemvielfalt ist momentan recht hoch. meist liegt zwar mittlerweile die x86 architektur zugrunde (wenn man server systeme mal aussen vor lässt und sich auf anwender seite beschränkt), aber die betriebssysteme unterscheiden sich in zig windows varianten, mac systeme und diverse *nix dialekte.
zumindest in meiner firma wurden deshalb unlängst viele systeme von c++ auf java umgestellt, um mit minimalen* anpassungen auf all diesen zielplattformen lauffähig zu sein.
* die sind in der realität dann doch manchmal nicht so minimal, wie man gerne hätte. aber bei weitem sparsamer, als die c++ legacy ungetüme damals.
-
Erhard Henkes schrieb:
Es ist sogar zumeist so, dass der Mainstream und das Beste nicht identisch sind. Beispielsweise war MS Winword zu Anfang der Neunziger nicht das beste Textverarbeitungsprogramm, aber es war von Microsoft. Wer sich damals z.B. für WordPerfect, Text5 (IBM) oder AmiPro entschied, hatte verloren, nämlich gegen Microsoft, den Riesen aus Seattle.
Naja, MS Word hatte einen ziemlichen Vorteil gegenüber den anderen Produkten: es war deutlich preiswerter (und Textverarbeitung haben die meisten Leute ein paar Monate vorher noch mit der Schreibmaschine gemacht). Es löst also ein Problem mit ziemlich geringem Aufwand. Ob das nun das Beste oder Murks ist, ist doch überhaupt nicht weiter relevant.
-
thordk schrieb:
zumindest in meiner firma wurden deshalb unlängst viele systeme von c++ auf java umgestellt, um mit minimalen* anpassungen auf all diesen zielplattformen lauffähig zu sein.
* die sind in der realität dann doch manchmal nicht so minimal, wie man gerne hätte. aber bei weitem sparsamer, als die c++ legacy ungetüme damals.
Man kann auch mit C++ plattformneutral programmieren. Wobei es wohl pragmatischer ist, Plattformabhängigkeiten nur zu minimieren.
Java funktioniert auf wesentlich weniger Plattformen als C++. :p
Naja, ich hab allerdings aus anderen technischen Gründen (und weils interessanter ist als immer nur C++ vs Java) für Erlang gestimmt. (So wie CengizS, Betreiber von JavaCore. :D)
-
Mr. N schrieb:
Java funktioniert auf wesentlich weniger Plattformen als C++.
wie kommst du auf das schmale brett?
-
pale dog schrieb:
Mr. N schrieb:
Java funktioniert auf wesentlich weniger Plattformen als C++.
wie kommst du auf das schmale brett?
Ich habe keine Ahnung was du meinst, will es auch gar nicht wissen, meine Aussage stimmt einfach (du kannst ja gerne zählen) und fertig.
-
der riesigen masse an windows, mac und *nix systemen steht zwar ne unglaubliche vielzahl proprietärer systeme gegenüber, allerdings spielt für den großteil dieser "plattformunabhängigkeit" gar keine rolle, da programme für diese systeme exakt auf das system zugeschnitten wird.
wenns um die frage geht, welcher sprache die zukunft gehört, sollte man sich auf consumer systeme beschränken. gibt für viele derzeit bestehende lösungen gar keine veranlassung, was anderes zu nehmen (z.b. die ganzen fortran und cobol programme, die immer noch ihren dienst verrichten).
wenns um industrielösungen (maschinensteuerungen, dtp automatisierung, etc.) und consumer anwendungen (textverarbeitung und gedöns) geht, dann spielen allerdings die zuvor genannten drei betriebssystemtypen die hauptrolle. die müssen nämlich kostengünstig und in den meisten fällen portabel sein. und für diese existieren jvms.
-
pale dog schrieb:
Mr. N schrieb:
Java funktioniert auf wesentlich weniger Plattformen als C++.
wie kommst du auf das schmale brett?
Zähl doch mal die Plattformen auf, auf denen ein Java Programm laufen kann? Und dann zähl mal die auf, wo es für C++ Compiler gibt... Aha! Damit ist Mr. N einfach auf einem breiten Brett. Sowas kann ich nur machen, weil es C++ für jede erdenkliche Plattform gibt. An Java ist auf solchen Plattformen nicht mal im entferntesten zu denken.
-
Mr. N schrieb:
pale dog schrieb:
Mr. N schrieb:
Java funktioniert auf wesentlich weniger Plattformen als C++.
wie kommst du auf das schmale brett?
Ich habe keine Ahnung was du meinst, will es auch gar nicht wissen, meine Aussage stimmt einfach (du kannst ja gerne zählen) und fertig.
ich will's dir trotzdem erzählen
erinnere dich an die einschränkung, die du in deinem eingangsposting gemacht hast und dann brauche ich nintendo-ds u.ä. gar nicht mitzählen.
...und dann ist deine aussage auch einfach falsch :p
-
pale dog schrieb:
Mr. N schrieb:
pale dog schrieb:
Mr. N schrieb:
Java funktioniert auf wesentlich weniger Plattformen als C++.
wie kommst du auf das schmale brett?
Ich habe keine Ahnung was du meinst, will es auch gar nicht wissen, meine Aussage stimmt einfach (du kannst ja gerne zählen) und fertig.
ich will's dir trotzdem erzählen
erinnere dich an die einschränkung, die du in deinem eingangsposting gemacht hast und dann brauche ich nintendo-ds u.ä. gar nicht mitzählen.
...und dann ist deine aussage auch einfach falsch :pDie Aussage hat die Einschränkung ignoriert. Schließlich war die Einschränkung zur Orientierung für die Umfrage gedacht, und damit Tim mich mit C in Ruhe lässt.
-
Mr. N schrieb:
...und damit Tim mich mit C in Ruhe lässt.
C taucht überhaupt nicht in der liste auf und wieso sollte Tim dir C aufschwatzen wollen?
btw: du hattest für erlang gestimmt?
das bestätigt doch meine prognose, dass VM- und interpreter-sprachen auf systemen mit hocher rechenleistung und hoher speicherkapazität im vormarsch sind...
-
pale dog schrieb:
Mr. N schrieb:
...und damit Tim mich mit C in Ruhe lässt.
C taucht überhaupt nicht in der liste auf und wieso sollte Tim dir C aufschwatzen wollen?
Weil Tim ein C-Fan ist und ich C vergessen habe. Ich hab ihm dann ML vorgeschlagen.
pale dog schrieb:
btw: du hattest für erlang gestimmt?
Ja.
pale dog schrieb:
das bestätigt doch meine prognose, dass VM- und interpreter-sprachen auf systemen mit hocher rechenleistung und hoher speicherkapazität im vormarsch sind...
Ich habe nicht deswegen für Erlang gestimmt. Obwohl, teilweise doch, weil es so um die teuren Betriebssystem-Prozesse herumkommt.