Index der verwendeten Programmiersprachen

Smalltalk
owl102

Re: Index der verwendeten Programmiersprachen

Beitrag von owl102 » 05.01.2017 21:34:23

tobo hat geschrieben:ich würde wetten, dass selbst Nichtprogrammierer einen einfachen Pascal-Text verstehen können.
Glaubst du das ernsthaft? Dann zeige mal deinen Pascal-Quelltext deiner Frau oder deinem Vater oder Mutter oder...

Für mich ist auch nicht entscheidend, wie gut ein Quelltext für Nicht-Programmierer verständlich ist, sondern, wie gut ein Quelltext für Programmierer verständlich ist.
Will man unter Windows native GUI-Anwendungen erstellen, dann findet sich in meinen Augen nichts besseres, schnelleres oder sichereres, als das mit Delphi zu erledigen.
Warum müssen die unbedingt nativ sein? Mir würde da zum Beispiel C# oder Java einfallen. Beides hätte auch den Vorteil, daß man nicht auf einen Closed-Source-Compiler einer einzelnen Firma angewiesen ist. (Nein, Lazarus ist zwar nett, aber mehr nicht. Insbesondere kann man nicht einfach aktuelle Delphi-Anwendungen unter Lazarus übersetzen.)

Python+Qt möchte ich auch noch in den Ring werfen.

Und überhaupt würde ich mich weigern, die Frage nach der Programmiersprache so pauschal zu bewerten, ich sehe das lieber in dem Kontext der konkreten Anforderungen und der konkret zur Verfügung stehenden Entwicklern. Und auch in dem Kontext, ob es eine kommerzielle Anwendung werden soll oder nicht, denn bei einer solchen verbietet sich IMHO Delphi. Man hatte ja an Kylix gesehen, wie schnell so ein einsamer Sonderweg in einer Sackgasse enden kann.

Benutzeravatar
SGibbi
Beiträge: 143
Registriert: 08.09.2015 03:28:11

Re: Index der verwendeten Programmiersprachen

Beitrag von SGibbi » 05.01.2017 22:50:46

Boah eY, hat das eine Dynamik entwickkelt. Ich komme kaum mit dem Lesen nach.

Nee, ich bin Elektroingenieur, ich bin hardwarenah, und die einzig wirkliche Programmiersprache für mich ist Assembler. Nee, ehrlich, habe Heute noch irgendwo eine Diskette mit Wordstar aus CP/M Zeiten rumliegen. Wie heißt noch der kompatible Linux Editor ? Pico ? Wordstar hat keinen "Verfall", denn man kann da noch ASCII Escape Strings eintragen und sich eigene Druckertreiber definieren. Auf meinem DR-DOS Rechner läuft derzeit allerdings der Ravitz Editor, der kann das auch.

Solange die Rechner die von Neumann Architektur haben, ist Assembler immer ähnlich, und schneller als Assembler ist nur noch optimierter Assembler. Ich bin kein Lehrer mehr, und in Fachkunde Elektro gibt es anderes, was die Schüler nötiger erlernnen müssen als Programmieren (naja, vielleicht SPS, aber dafür gibt es "Programmgeneratoren").

C frißt 30% bis 50%. Rechenleistung. Gegenüber Assembler wäre unser Linux Rechner ziemlich genau doppelt so schnell, würden wir Assemblieren. Und die Abweichungen von CPU zu CPU kann man sich Heute in jedem besseren Programmiereditor als Makro definieren.

Trotzdem wird C so schnell nicht totzukriegen sein. Die Portierbarkeit ist beispielhaft, man braucht als Programmierer keine Hardware Kenntnisse, und moderne Hardware hat Leistung. Mein 12 Jahre alter Pentium spielt mir unter Linux die tanzende Madonna als Video in Bild und Ton. Was will ich mehr ?

Pascal war DIE Sprache der DOS Shareware Szene. Am Ende war es der Bettvorleger für C. Schade. Wäre Pascal Code portierbar geworden, allein die vielen DOS Games, kein Mensch würde mehr das langweilige Windoze nehmen. Turbo Pascal unter DOS war allerdings ziemlich schnell. Die schnellste CAD in DOS war Geddy CAD, habe das noch Heute auf der Platte, ich kenne kein vergleichbares Linux Äquivalent, und das war 100% Pascal Code.

Ich habe Fortran wirklich zu hassen gelernt. Sofern es ein physikalisches Limit bei der Hardware gibt, und es wird wie überall irgendwann eines kommen, werden wir früher oder später auf Assembler müssen. Solange zig verschieden Hardware Systeme konkurrieren, wird C schon wegen der Portierbarkeit nicht totzukriegen sein. Und zumindest so lange wird es unser geliebtes Linux geben.

Von Skriptsprachen, sei es Bash oder was auch immer z.B. an Java im Webbrowser läuft, halte ich nicht viel. Soo einfach zu programmieren ist es auch nicht, und Performance, naja, unter aller Sau. Es zu erlernen verlorene Zeit. Wer Heute (ersthaft) publiziert, nimmt (bereits) PDF und nicht (mehr) HTML.

Ich meine, wenn wir schon bei Fortran IV und bei Pascal sind, was ist denn eigentlich aus den ganzen BASIC Programmierern geworden, das war einst wesentlich populärer zumindest als Fortran. Sind die Helden der 1980er schon alle tot ? Wann endlich kommt Basic für Linux (würde es nicht nehmen, aber dann wären alle C-64 Spiele auf Linux verfügbar)

Okay, ich halts Maul, Tschüss und bis dann !
The police are uneducated, evil, and sadistic. Do not trust them.
(Ian Murdock)

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Index der verwendeten Programmiersprachen

Beitrag von tobo » 05.01.2017 23:23:01

owl102 hat geschrieben:Glaubst du das ernsthaft? Dann zeige mal deinen Pascal-Quelltext deiner Frau oder deinem Vater oder Mutter oder...
Wohl gemerkt einfacher Quelltext, erheblich kleiner als 5-stellig! Und wenn es nicht verstanden wird, dann auch nicht in einer der anderen bislang genannten Sprachen.
Für mich ist auch nicht entscheidend, wie gut ein Quelltext für Nicht-Programmierer verständlich ist, sondern, wie gut ein Quelltext für Programmierer verständlich ist.
Klar. Wie breits gesagt, Pseudocode wird im Allgemeinen ähnlich zur Pascalsyntax aufgeschrieben, so dass andere Proggrammierer (egal welche Sprache) es nachvollziehen können. Sollte ein ziemlich gutes Argument sein!?
Beides hätte auch den Vorteil, daß man nicht auf einen Closed-Source-Compiler einer einzelnen Firma angewiesen ist.
Das ist Diskussionsstoff, der kein Ende findet. Genauso könnte man sich fragen, wieso die Firmen Closed-Source-Betriebssysteme verwenden und sich in die Abhängigkeit einer einzelnen Firma begeben!? Support? Versteh' mich nicht falsch, ich bin kein Fan von Closed Source bzw. Delphi, wohl aber finde ich die Sprache Object Pascal gut.
(Nein, Lazarus ist zwar nett, aber mehr nicht. Insbesondere kann man nicht einfach aktuelle Delphi-Anwendungen unter Lazarus übersetzen.)
Natürlich ist das nicht einfach, das liegt aber weniger an Lazarus sondern an Free Pascal, welches schlicht noch nicht alle Sprachkonstrukte nachgebildet hat. Allerdings sind da beide Projekte meiner Meinung nach auf einem ziemlich guten Weg.
Und überhaupt würde ich mich weigern, die Frage nach der Programmiersprache so pauschal zu bewerten, ich sehe das lieber in dem Kontext der konkreten Anforderungen und der konkret zur Verfügung stehenden Entwicklern.
Stimmt schon, war meinerseits auch nur als Einwand auf die Abgesänge von TurboPascal gedacht. Mir ging es hauptsächlich um die "pauschale" Kritik an Pascal als Lehrsprache, mit Argumenten, die ich nicht nachvollziehen kann.
Und auch in dem Kontext, ob es eine kommerzielle Anwendung werden soll oder nicht, denn bei einer solchen verbietet sich IMHO Delphi. Man hatte ja an Kylix gesehen, wie schnell so ein einsamer Sonderweg in einer Sackgasse enden kann.
Den Gedankensprung verstehe ich jetzt nicht?! Das Projekt eingestellt werden können ist immer klar. Kylix ist ja auch nicht nativ gelaufen - ich kann mir nicht vorstellen, dass da jemand ernsthaft große Hoffnungen drauf gesetzt hat. Davon ab, wie oft wurde Delphi jetzt verkauft - 6, 7 mal? Vor kurzem gab es schon wieder einen Käufer. Die wenigsten OpenSource-Projekte dürften solch eine Fluktuation an der Spitze vertragen!?

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: Index der verwendeten Programmiersprachen

Beitrag von hikaru » 06.01.2017 00:06:30

tobo hat geschrieben:Will man unter Windows native GUI-Anwendungen erstellen, dann findet sich in meinen Augen nichts besseres, schnelleres oder sichereres, als das mit Delphi zu erledigen.
Mag sein, aber ich finde Delphi als Lehrsprache trügerisch.
Als Pascal-Abkömmling sieht es erstmal nach einem guten Kandidaten dafür aus, aber meiner Beobachtung nach tendierten Schüler die TP kannten dazu, sich in Delphi eine schicke Oberfläche zusammenzuklicken und dann den automatisch generierten Delphi-Rumpfcode mit prozeduralem Code zu füllen wie sie es aus TP kannten.
Das Ergebnis funktionierte wunderbar, aber die Leute meinten dann plötzlich, sie könnten OOP, denn Delphi ist ja schließlich objektorientiert. Müssen sie dann in einer anderen Sprache selbst mit Objekten hantieren, dann fallen sie aus allen Wolken.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Index der verwendeten Programmiersprachen

Beitrag von tobo » 06.01.2017 01:01:00

hikaru hat geschrieben:Mag sein, aber ich finde Delphi als Lehrsprache trügerisch.
Als Pascal-Abkömmling sieht es erstmal nach einem guten Kandidaten dafür aus, aber meiner Beobachtung nach tendierten Schüler die TP kannten dazu, sich in Delphi eine schicke Oberfläche zusammenzuklicken und dann den automatisch generierten Delphi-Rumpfcode mit prozeduralem Code zu füllen wie sie es aus TP kannten.
Das Ergebnis funktionierte wunderbar, aber die Leute meinten dann plötzlich, sie könnten OOP, denn Delphi ist ja schließlich objektorientiert. Müssen sie dann in einer anderen Sprache selbst mit Objekten hantieren, dann fallen sie aus allen Wolken.
Man muss nicht in Delphi objektorientiert Programmieren, aber man kann. Wenn ich mir darin eine Oberfläche zusammenklicke (was ich nicht müsste), dann ist das streng genommen schon objektorientiert, ja. Will ich allerdings als Neuling der Programmierung Ergebnisse auf einem Monitor sehen und sehe dann eine Konsole mit Buchstaben vor mir, dann schreckt das 90% ab. Ich denke diesen Kompromiss kann man machen. Man gibt ihnen eine grafische Oberfläche und lehrt die Sprach- und grundsätzlichen Programmierelemente dann anhand prozeduraler Programmierung. Denn OOP ist für einen Neueinsteiger in meinen Augen völliger Unsinn. Zunächst mal glaube ich, dass ein Großteil der Leute, die von sich behaupten OOP zu programmieren, nur prozedural programmieren unter Verwendung von Klassen. Da wird hier mal eine Klasse erzeugt, da mal eine abgeleitet - nur weil ich Klassen verwende ist das nicht objektorientiert gedacht. Hohe Bindung, lose Kopplung, Austauschbarkeit, Delegation, Entwurfsmuster - Fremdwörter. Da muss man sich nur mal ein paar Quelltexte durch die Bank anschauen, dann sieht man direkt, wie nah das an der Wahrheit ist. Es kommt dann ja nicht nur die Komplexität der OOP auf einen Neuling zu - die selbst viele Profis in ihrer Eigenart überhaupt nicht begreifen, aber "anwenden" - das eigentliche Handwerk ist ja auch noch nicht vermittelt. Und wenn ich in der Schule Pascal lernen soll, dann muss das absolut keine kastrierte Delphi-Trial mit den bekannten Einschränkungen sein, sondern darf gerne das kostenlose Lazarus sein. Will ich programmieren lernen, dann ist das absolut ausreichend und für jede Schule ohne Lizenzen machbar.

dufty2
Beiträge: 1709
Registriert: 22.12.2013 16:41:16

Re: Index der verwendeten Programmiersprachen

Beitrag von dufty2 » 06.01.2017 10:02:09

Sehe das eher pragmatisch:
Lernte in der Schule Englisch und nicht Suaheli.
Suaheli ist bestimmt auch nicht "schlechter" als Englisch,
aber die Wahrscheinlichkeit, im späteren (Berufs-)Leben es nutzen zu können/müssen, ist wohl geringer.
Deshalb für Java (und mit Abstrichen vielleicht python) und gegen FORTRAN66 oder Assembler (oder mit Abstrichen Delphi) ;)

Und bezüglich formaler Verifikation ("no bugs instead of less bugs") sticht keine hervor
(wobei OO nicht verifiziert werden kann, so mein letzter Wissensstand).
Zuletzt geändert von dufty2 am 06.01.2017 10:20:26, insgesamt 1-mal geändert.

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Index der verwendeten Programmiersprachen

Beitrag von Lord_Carlos » 06.01.2017 10:15:41

SGibbi hat geschrieben: Von Skriptsprachen, sei es Bash oder was auch immer z.B. an Java im Webbrowser läuft, halte ich nicht viel. Soo einfach zu programmieren ist es auch nicht, und Performance, naja, unter aller Sau. Es zu erlernen verlorene Zeit.
Du meinst javascript?
Oder wirklich das tote java plugin fuer browser?
Zuletzt geändert von Lord_Carlos am 09.01.2017 10:34:27, insgesamt 1-mal geändert.

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

owl102

Re: Index der verwendeten Programmiersprachen

Beitrag von owl102 » 06.01.2017 12:01:39

tobo hat geschrieben:Wie breits gesagt, Pseudocode wird im Allgemeinen ähnlich zur Pascalsyntax aufgeschrieben
Wie definierst du "im Allgemeinen"? Ich behaupte mal, daß dies im allgemeinen nicht mehr so ist, diese Zeiten sind IMHO lange vorbei. Pseudo-Code sehe ich heutzutage entweder als Diagramm, mit Pfeilen, oder ähnlich zu Java.
Genauso könnte man sich fragen, wieso die Firmen Closed-Source-Betriebssysteme verwenden und sich in die Abhängigkeit einer einzelnen Firma begeben!?
Dies ändert nichts an der Tatsache, daß diese Abhängigkeit keine positive, sondern eine negative Eigenschaft ist. Es muß also ausreichend Gründe geben, sich doch in die Abhängigkeit zu begeben. Bei Delphi sehe ich die nicht, es sei denn, es ist bereits (zu) viel Codebasis in Delphi vorhanden.
Kylix ist ja auch nicht nativ gelaufen - ich kann mir nicht vorstellen, dass da jemand ernsthaft große Hoffnungen drauf gesetzt hat.
Natürlich gab es Firmen, die Neuentwicklungen in CLX statt VCL getätigt hatten (selbst wenn sie an Linux als Zielplattform kein primäres Interesse hatten), schließlich wurde CLX von Borland als "Zukunft" beworben.

wanne
Moderator
Beiträge: 7447
Registriert: 24.05.2010 12:39:42

Re: Index der verwendeten Programmiersprachen

Beitrag von wanne » 06.01.2017 12:33:55

heisenberg hat geschrieben:Na. Ich würde sagen da gibt es gerade im Bashbereich auch schon Welten des Unterschiedes, je nach dem wie performant und effizient man gelernt hat damit zu programmieren - da hat man auch schnell mal ein paar Tausend? Millionen? Prozesse erzeugt bei grösseren Programmen.
Hatte darauf geachtet, dass ich ausschließlich befehle nutze, die in der bash integriert sind.
heisenberg hat geschrieben:Aber für grössere Programme würde ich selbst nur unter Androhung von Folter in Bash programmieren wollen.
War eine einzelne Schleife mit vielleicht 4 Zeilen.
heisenberg hat geschrieben:Im übrigen sind für mich Bash <-> HPC schon Positionen, wie Sie nicht weiter voneinander entfernt sein können.
In dem Fall gieng es um was für mich zu hause. Trotzdem ist die Bash da für Verwaltungsaufgaben natürlich groß.
tobo hat geschrieben:Da muss man sich nur mal ein paar Quelltexte durch die Bank anschauen, dann sieht man direkt, wie nah das an der Wahrheit ist.
Also gerade wenn du dir Android Apps anguckst ist das praktisch nur Spezialisierung und sonst gar nichts. Prozedural ist da absolut gar nichts. Die ich suche mir was, was für mich ähnlich klingt und dann auf Stackoverflow, wie ich das nach meinem Wunsch anpasse führt zwar ganz und gar nicht zu besserem Code aber so ist mittlerweile eine ganze Generation weg vom prozeduralen Programmieren gekommen. Die machen nur noch OOP. Bei C++ sieht das noch etwas anders aus. Da laufen aber auch immer noch verdammt viele rum, die mal mit Pascal angefangen haben. Und die programmieren halt ausschließlich Prozedural und sind vollständig resistent gegen jegliches dazulernen.
tobo hat geschrieben:Klar. Wie breits gesagt, Pseudocode wird im Allgemeinen ähnlich zur Pascalsyntax aufgeschrieben, so dass andere Proggrammierer (egal welche Sprache) es nachvollziehen können. Sollte ein ziemlich gutes Argument sein!?
NEIN! Genau das Gegenteil ist der Fall. Es gibt viele Konstrukte wie OOP die für sich komplex zu verstehen sind aber geübten Lesern Sachen deutlich vereinfachen. Eine Sprache weitestgehend ohne Grammatik (Klingonisch) ist deutlich einfacher zu lernen sinnvoll komplexere Sachverhalte zu formulieren geht aber eben extrem schwer.
Bronze schmieden ist deutlich einfacher als alle anderen Metallverarbeitungen. Kannst du als Workshop auf dem Mittelaltermarkt anbieten und wurde schon 5000 Jahre vor Edelstahl hergestellt. Stattdessen nutzen wir für Anwendungszwecke wo früher Bronze genutzt wurde heute typischerweise Edelstahl dessen Herstellung und Verarbeitungsverfahren ganze Bibliotheken füllen. Nicht weil es einfacher zu erlernen ist, sondern weil es für darauf spezialisierte Menschengruppen schneller billiger und in größeren Mengen funktioniert. Dabei ist dann das Ergebnis auch noch deutlich robuster.

Ansonsten ist der eher an basic angelehnt weil halt jeder mal basic gesehen hat, und die Leute es deswegen für einfach hielten. Und schwankt nach und nach Richtung C und Java weil das halt häufig ist. Und wäre haskell die verbreitetste Sprache sähe Pseudocode garantiert gaaanz anders aus.
Das einzig wirklich ohne Vorkenntnisse verständliche ist das "mit Pfeilen":
Bild
SGibbi hat geschrieben:C frißt 30% bis 50%. Rechenleistung. Gegenüber Assembler wäre unser Linux Rechner ziemlich genau doppelt so schnell, würden wir Assemblieren.
Das ist falsch. Es gab mal einen Wettbewerb für IA64 Assembler und C Programmierer gegen den Intel Compiler. Die allermeisten Assembelten deutlich langsamer. Du musst schon verdammt viel über derzeitige Prozessoren wissen (Wie große sind die Caches, wie lange die Pipelines), und verdammt gut sein, das alles einzubauen um einen guten Compiler outzuperformen. IA64 ist da natürlich noch besonders böse, aber dein mit Makros Plattformunabhängig gemachter Code ist garantiert auch auf einem modernen x86 deutlich langsamer als das was ein besserer Compiler produziert.
tobo hat geschrieben:Und was genau stört dich daran jetzt? … Wenn Du als Delphi-Programmier das so hinschreibst und damit schlechten Programmierstil offenbarst
Stören tut mich daran erstmals nichts. Das ist das Beispiel aus der Wikipedia für Pascal Code. So unüblich kann das nicht sein. In C haben sie aber tatsächlich was ähnliches drin. Die wollen halt auch allgemeinverständlich sein.
Aber in anderen Sprachen nimmst du andere Konstrukte. Und genau das ist das Problem mit Leuten die als erstes Delphi lernen. Sie machen genau das:
Abgrenzung von n<100 durch Klammern, Schleifenrumpf in begin/end, Leerschleife?
Und dann ist es eben gar kein schöner Programmierstil. Du nutzt eben nicht, was die Sprache dir bietet, sondern das was sie in Pascal gelernt haben, und denken am ende jede Programmiersprache würde so funktionieren.
Z.B. Könnte man sowas in C so lösen:

Code: Alles auswählen

while(i++-100);
Über die Lesbarkeit von sowas kann man sich streiten, aber ein geübter C-Programmierer wird dir die Sinnlosigkeit des Codes gesehen haben, bevor du die 2 Zeilen Pascal überhaupt gelesen hast.
In Scheme wird das im übrigen richtig lustig:
Man könnte auch da irgend wie sowas schreiben:

Code: Alles auswählen

(define (loop n)
  (if (< n 100)
      (loop (+ n 1)
      0)))
Aber hier würde dir dann halt echt jeder das Programm links und rechts um die Ohren hauen weil schleifen in Scheme halt eigentlich nichts zu suchen haben.
rot: Moderator wanne spricht, default: User wanne spricht.

Benutzeravatar
hikaru
Moderator
Beiträge: 13559
Registriert: 09.04.2008 12:48:59

Re: Index der verwendeten Programmiersprachen

Beitrag von hikaru » 06.01.2017 12:54:59

wanne hat geschrieben:Eine Sprache weitestgehend ohne Grammatik (Klingonisch) ist deutlich einfacher zu lernen
Wenn du dich tatsächlich mal mit der klingonischen Sprache beschäftigt hättest, dann wüsstest du, dass sie eine sehr ausgefeilte Grammatik hat - mit allen dazugehörenden Vor- und Nachteilen.
Ohne Kenntnisse der Grammatik wirst du dich auf Klingonisch selbst mit Vokabelkenntnissen kaum verständlich machen können, denn der Ansatz schlecht Englisch sprechender Deutsch-Muttersprachler, einfach die Vokabeln auszutauschen, führt nicht zu einem schlechten aber verständlichen Klingonisch, sondern bestenfalls zu Kauderwelsch, schlimmstenfalls zu einer formal halbwegs korrekten aber sinnentstellten Aussage.

DeletedUserReAsG

Re: Index der verwendeten Programmiersprachen

Beitrag von DeletedUserReAsG » 06.01.2017 13:05:45

SGibbi hat geschrieben:Von Skriptsprachen, sei es Bash oder was auch immer z.B. an Java im Webbrowser läuft, halte ich nicht viel. Soo einfach zu programmieren ist es auch nicht, und Performance, naja, unter aller Sau. Es zu erlernen verlorene Zeit. Wer Heute (ersthaft) publiziert, nimmt (bereits) PDF und nicht (mehr) HTML.
Oh je, da wird ja wieder einiges durcheinandergeworfen und verquirlt. Scriptsprachen verlorene Zeit? Erstaunlich in einer Zeit, in der die meisten Sachen mit Scriptsprachen realisiert werden. Die wenigsten Webandwendungen sind für die Serverhardware kompiliert, in aller Regel laufen da … Scriptsprachen. Viele lokale Anwendungen werden mittlerweile zu einem großen Teil mittels Scriptsprachen realisiert – bis hin zu Spielen, etc. (Lua hat da den Ruf, ziemlich schnell zu sein, und kommt in erstaunlich vielen Spielen zum Einsatz). Heutzutage steht in den meisten Fällen Rechenleistung und Speicherplatz in ausreichendem Maß zur Verfügung, während die Software am besten gestern schon fertig sein muss. Und du willst da mit C oder gar Assembler ankommen, weil Scriptsprachen verlorene Zeit sind? Nun ja ….

Java im Webbrowser ist, bis auf ganz wenige Spezialfälle, heute gar nicht mehr anzutreffen. Und so wirklich langsam ist Java auch nicht, eine Scriptsprache ist es schon gar nicht.

Und HTML vs. PDF? Beide sind uralt (HTML erschien 1989, PDF wurde 1993 vorgestellt, das zugrundeliegende Postscript gibt es schon erheblich länger) – und beide sind (natürlich in aktuellen Versionen) heute noch genauso im Einsatz, wie früher™ – jedes dort, wofür es gemacht wurde. HTML wird und wurde naturgemäß nicht für exakt festgelegte Darstellung und als Druckvorstufe verwendet, PDF wird und wurde nicht für Webseiten genommen. Ich frage mich daher, worauf du hinaus möchtest.

Benutzeravatar
heisenberg
Beiträge: 3473
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Index der verwendeten Programmiersprachen

Beitrag von heisenberg » 06.01.2017 13:28:22

wanne hat geschrieben:...bash ist total langsam...
Unter den o. g. Bedingungen ist der Aussage dann nichts mehr hinzuzufügen. :)
... unterhält sich hier gelegentlich mangels wunschgemäßer Gesprächspartner mal mit sich selbst.

Benutzeravatar
novalix
Beiträge: 1908
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: Index der verwendeten Programmiersprachen

Beitrag von novalix » 06.01.2017 13:39:50

Manchmal gewinnt man den Eindruck objekt-orientiertes Programmieren sei mit dem Gebrauch von Java gleich zu setzen. Dabei ist Java einfach nur eine Sprache, die kaum ein anderes Paradigma als eben OOP zulässt. Das ist aber aus Grundlagensicht heraus eine Einschränkung. Das OOP-Paradigma ist leistungsstark. Es kann aber eben auch nur, was es kann.
Wo wir schon bei Scheme waren: Anfang der siebziger haben Guy Steele und Gerald Sussman gezeigt, dass lexical closures Prozeduren erlauben, die mit einem jeweiligen Status in ihrer Umgebung verbunden sind. Das sind wie Alan Kaye - der Entwickler von Smalltalk und "Erfinder" des Begriffs "object oriented" - äußerte die "building blocks", die Bausteine, einer höheren Abstraktion.
In diesem Sinne ist Oblektorientierung ein mögliches Paradigma auf Basis funktionaler Komponenten.
Lisp ist die multiparadigmatische Programmiersprache. Ginge es also darum, die Konzepte des Programmierens grundlegend und umfangreich zu vermitteln, wäre Lisp der geeignete Kandidat.
Aber darum geht es offensichtlich nicht.
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

wanne
Moderator
Beiträge: 7447
Registriert: 24.05.2010 12:39:42

Re: Index der verwendeten Programmiersprachen

Beitrag von wanne » 06.01.2017 18:19:57

novalix hat geschrieben:In diesem Sinne ist Oblektorientierung ein mögliches Paradigma auf Basis funktionaler Komponenten.
Als jemand der mit OOP groß geworden ist, fand ich auch dass Scheme geradezu dazu anregt objektorientiert zu programmieren. – Sehr zum Ärgernis meiner Tutoren im ersten Semester an der UNI. „Das kommt später“.
Ich glaube es ist schon nicht ganz dumm erstmal. Sprachen zu lernen, die nur ein Paradigma zulassen um genau dieses zu vermitteln sonst nutzt man ja doch nur ausgewählte teile der Sprache.
Man ist ja leider ziemlich schnell Turingvollständig und kann auch mit einem Paradigma alles machen.

Wenn man dann alles kann, kann man auf sprachen wie C++ umsteigen die einem alles mögliche erlauben. Solche Sprachen sind aber nichts für anfänger.
Wie war das „With great power comes great responsibility“ ;-)

Scheme als vergleichsweise primitive Sprache die Paradigmen gut zeigen kann git zumindest an europäischen UNIs schon als DIE Sprache um gut programmieren zu lernen.
Bei uns gab es viele Features erst nach und nach. Auch wenn es uns (vor allem die, die schon besser als die Tutoren programmieren konnten) wahnsinnig generft hat, ist das glaube ich keine dumme Idee zu Lehren.
rot: Moderator wanne spricht, default: User wanne spricht.

Benutzeravatar
SGibbi
Beiträge: 143
Registriert: 08.09.2015 03:28:11

Re: Index der verwendeten Programmiersprachen

Beitrag von SGibbi » 09.01.2017 06:39:23

Hallo Lord_Carlos, Hallo Niemand,

Mit Skriptsprache meinte ich "Interpretersprache", also Sprachen, die (normalerweise) nicht oder nur teilweise compiliert werden. Beispiele wären in der Tat Java Script oder Bash oder z.B. das gute alte "Batch" von GOD (Good old Dos). Daß die Aussage grenzwertig ist, weiß ich, so konnte man früher z.B. BASIC Programme wahlweise am Interpreter ablaufen lassen oder compilieren.

Ansonsten hat sich der Thread mittlerweile anderen Themen zugewandt, lassen wir es mal dabei, sich jetzt eine Klobberei um Java zu gönnen (wozu) bringt den Thread nicht voran. Zudem ich von Delphi keine Ahnung habe daher nicht mitreden kann.

Das einzige, was ich im Moment noch ernsthaft "programmiere" ist HPGL. Das ist eine Druckersprache, die mir aus DOS Textmodus schöne Formatierungen ermöglicht. Und vielleicht etwas SPS, das gehört zum Beruf, also hardwarenah.
The police are uneducated, evil, and sadistic. Do not trust them.
(Ian Murdock)

DeletedUserReAsG

Re: Index der verwendeten Programmiersprachen

Beitrag von DeletedUserReAsG » 09.01.2017 17:17:22

Mit Skriptsprache meinte ich "Interpretersprache", also Sprachen, die (normalerweise) nicht oder nur teilweise compiliert werden. Beispiele wären in der Tat Java Script oder Bash oder z.B. das gute alte "Batch" von GOD (Good old Dos).
Spricht nix dagegen. Du hattest aber Java genannt, und das ist im Gegensatz zu Javascript explizit keine Scriptsprache.

nudgegoonies
Beiträge: 939
Registriert: 16.02.2009 09:35:10

Re: Index der verwendeten Programmiersprachen

Beitrag von nudgegoonies » 10.01.2017 10:29:37

SGibbi hat geschrieben:Ich meine, wenn wir schon bei Fortran IV und bei Pascal sind, was ist denn eigentlich aus den ganzen BASIC Programmierern geworden, das war einst wesentlich populärer zumindest als Fortran. Sind die Helden der 1980er schon alle tot ? Wann endlich kommt Basic für Linux (würde es nicht nehmen, aber dann wären alle C-64 Spiele auf Linux verfügbar)
Die ganzen Freeware Basic Programme zum Abtippen die es Ende der 70'er bis Mitte der 80'er in vielen Publikationen gab, liefen auf fast allen 8 und 16 Bittern die irgendeinen Basicinterpreter hatten. Aber um die Grafik- und Sound-Features des C64 zu nutzen und ihn auszureizen brauchte man Assembler - ergo waren auch fast alle (nicht-Abtipp) C64 Spiele in Assembler geschrieben. Oder mit einem Maschinensprachemonitor direkt in den Speicher gehackt :wink: Und die Ergebnisse kannst Du im Emulator nutzen :!: Aber ich verstehe worauf Du hinaus willst. Damals was Basic meist im ROM eingebaut und man brauchte einfach um den Rechner zu bedienen schon Basic Befehle um Programme zu laden. So eine einfache Programmiersprache die auf allen Rechnern sofort verfügbar ist und eine Verbreitung hat wie Basic damals gibt es heute aber nicht mehr. Somit stehen die Anfänger direkt vor der Frage, mit welcher Sprache fange ich an?
Soft: Bullseye AMD64, MATE Desktop. Repo's: Backports, kein Proposed, eigene Backports. Grafik: Radeon R7 360 MESA.
Hardware: Thinkstation S20, Intel X58, 16GB, Xeon W3530, BCM5755 NIC, EMU10K1 SND, SATA SSD+HDS und DVD+RW.

Benutzeravatar
SGibbi
Beiträge: 143
Registriert: 08.09.2015 03:28:11

Re: Index der verwendeten Programmiersprachen

Beitrag von SGibbi » 13.01.2017 19:40:18

nudgegoonies hat geschrieben: ... So eine einfache Programmiersprache die auf allen Rechnern sofort verfügbar ist und eine Verbreitung hat wie Basic damals gibt es heute aber nicht mehr. ...
Doch, gibt es. Nämlich C. Es gibt kaum eine Hardware Plattform, für die C nicht als eine der ersten höheren Programmiersprachen verfügbar ist. Und als nächstes Linux.

Einfach wie BASIC ? Für mich sicherlich nicht, für diejenigen, die mit C anfangen, ist das uralte BASIC aber genauso daneben.

Es war im Übrigen HPPCL und nicht HPGL, das ich noch pflege, sorry, Tippfehler.

Ansonsten Dank für den netten Beitrag. Ist wirklich so. :THX:
The police are uneducated, evil, and sadistic. Do not trust them.
(Ian Murdock)

DeletedUserReAsG

Re: Index der verwendeten Programmiersprachen

Beitrag von DeletedUserReAsG » 13.01.2017 19:55:44

Aber um die Grafik- und Sound-Features des C64 zu nutzen und ihn auszureizen brauchte man Assembler - ergo waren auch fast alle (nicht-Abtipp) C64 Spiele in Assembler geschrieben. Oder mit einem Maschinensprachemonitor direkt in den Speicher gehackt
Gab auch Abtippprogramme in C64-Basic, die auf Maschinensprache zurückgriffen. Erkennbar an den ewig vielen, langen DATA-Zeilen. Hatten den Nachteil, dass es keine Prüfsummen gab, so dass ein Zahlendreher stundenlange Fleißarbeit beim Abtippen wertlos werden ließ (such’ mal in tausend fünfstelligen Ziffernfolgen die eine raus, bei der 6 und 8 vertauscht sind …). Die 64er hatte dann ein entsprechendes Programm entwickelt, glaube, das hieß „Checksummer“, das die Suche dann immerhin auf eine Zeile reduzierte. Daneben gab’s halt noch den MSE – allerdings konnten, im Gegensatz zu den Basic- und ASM-Listings, da die wenigsten was beim Abtippen lernen.

Naja, BASIC ist heute eher was für Liebhaber – als Einsteigersprachen stehen eine Reihe ziemlich guter und gut dokumentierter Scriptsprachen zur Verfügung – je nachdem, was man denn lernen möchte. Wenn’s allgemein sein soll, würde ich persönlich zu Python raten – zumindest von den Sprachen, die ich kenne, ist das bei Weitem die Eingängigste, und machen kann man damit im Grunde sowieso alles; der Code ist portabel (solange man keine plattformspezifischen Module hernimmt) und der größte Nachteil ist die geringe Ausführungsgeschwindigkeit, die aber praktisch eher selten wirklich ins Gewicht fällt.

Zu C hingegen würde ich heute nur noch jemandem raten, der weiß, dass und warum er C benötigt/haben möchte. Und dem muss ich dann auch nix raten ;)

nudgegoonies
Beiträge: 939
Registriert: 16.02.2009 09:35:10

Re: Index der verwendeten Programmiersprachen

Beitrag von nudgegoonies » 18.01.2017 13:44:59

SGibbi hat geschrieben:
nudgegoonies hat geschrieben: ... So eine einfache Programmiersprache die auf allen Rechnern sofort verfügbar ist und eine Verbreitung hat wie Basic damals gibt es heute aber nicht mehr. ...
Doch, gibt es. Nämlich C. Es gibt kaum eine Hardware Plattform, für die C nicht als eine der ersten höheren Programmiersprachen verfügbar ist. Und als nächstes Linux.
Mit der Verfügbarkeit von C hast Du natürlich recht. Die Anbindung an den Kernel oder die Basisbibliotheken der Betriebssysteme sind fast ausschließlich in C (oder C++/Objective C). Alle weiteren Sprachen benötigt dann diese Bindings.

Ich habe aber meine Zweifel ob C die richtige Sprache für den Einstieg ist. Speicherverwaltung und Pointer sind ein Thema, wo man schon einen etwas tieferen Einblick in Rechnerarchitektur braucht um sie zu verstehen. Gegen eine Garbage-Collection-Compilersprache spricht meiner Meinung nach gar nicht so viel. Es fehlt halt nur der interaktive Modus von Scriptsprachen.
Soft: Bullseye AMD64, MATE Desktop. Repo's: Backports, kein Proposed, eigene Backports. Grafik: Radeon R7 360 MESA.
Hardware: Thinkstation S20, Intel X58, 16GB, Xeon W3530, BCM5755 NIC, EMU10K1 SND, SATA SSD+HDS und DVD+RW.

Benutzeravatar
MSfree
Beiträge: 10684
Registriert: 25.09.2007 19:59:30

Re: Index der verwendeten Programmiersprachen

Beitrag von MSfree » 18.01.2017 14:10:32

nudgegoonies hat geschrieben:Speicherverwaltung und Pointer sind ein Thema, wo man schon einen etwas tieferen Einblick in Rechnerarchitektur braucht um sie zu verstehen.
Das sehe ich nicht so. Selbst das erwähnte Ur-Basic kannte schon den DIM-Befehl, der ähnlich funktioniert wie das malloc in C. Einen wriklich tiefen Einblick in die Rechnerarchitektur braucht man dazu jedenfalls nicht, da reichen Grundkenntnisse wie Speichergröße, maximal alloziierbare Blockgröße (DOS 64kiB Segmente) etc.

Benutzeravatar
novalix
Beiträge: 1908
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: Index der verwendeten Programmiersprachen

Beitrag von novalix » 18.01.2017 15:17:41

nudgegoonies hat geschrieben:Gegen eine Garbage-Collection-Compilersprache spricht meiner Meinung nach gar nicht so viel. Es fehlt halt nur der interaktive Modus von Scriptsprachen.
Zum einen stimme ich zu. Zum anderen: Welche Scriptsprache ist denn interaktiver als Lisp?
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

Benutzeravatar
heisenberg
Beiträge: 3473
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Index der verwendeten Programmiersprachen

Beitrag von heisenberg » 18.01.2017 17:53:53

Das vielgehasste Basic als Einsteigersprache habe ich selbst gerne genutzt. Sowohl am Anfang zu DOS 5.X Zeiten, mit der es meine einzige Möglichkeit Programme zu schreiben, die man auch kompilieren konnte. Ich weiss jetzt gar nicht ob es die Compiler(QuickBasic,PowerBasic) überhaupt frei gab oder ob das Raubkopien waren. Im Zweifelsfall konnte man auch das mitgelieferte QBasic interpretiert ausführen lassen.

Später fand ich dann Visual Basic für gelegentliche Experimente ganz nett. Das lag wohl hauptsächlich an der IDE, bei der ich eigentlich überhaupt nix wissen musste, da eigentlich immer sofort alles ergänzt und vorgeschlagen wurde bei Eingabe von bestimmten Trennern.(Hauptsächlich Punkte als Objekt/Eigentschaft/Methoden-Trenner).

Anschliessend habe ich noch das eine oder andere mit VBScript gebastelt. Das war aufgrund der Integration und Standard-Bibliotheken auch echt super zu benutzen und ich fand das Skripting damit echt angenehm.

---

Mittlerweile habe ich damit nix mehr am Hut. Falls ich für Windows scripten würde, weiss ich nicht ob ich nicht doch Powershell verwenden würde oder auch dort die gelernten Fähigkeiten der Standard-OSS-Sprachen jetzt dort verwenden würde. Meine Entwicklungsumgebung ist immer und überall vim.

---

Doch um bei der Frage zu bleiben: Gibt es denn heutzutage einen weitverbreiteten Ersatz für das damalige Basic?

Auf jeden Fall. Und nicht nur einen sondern viele. Also mit C würde ich jetzt in einer allgemeinbildenen Schule keinesfalls anfangen. Da will man ja vielleicht auch ein paar plakative Fähigkeiten demonstrieren - eine Webanwendung oder eine GUI - aber auch ein grundlegendes Verständnis für Algorithmen erarbeiten. Schliesslich muss man es als normaler Lehrer auch verstehen können, der eher ein Generalist als ein Spezialist ist und nur begrenzte Kapazitäten für einzelne Themen zur Verfügung hat.

Ich würde dafür alle Mainstream-Scriptsprachen als geeignet empfinden. Natürlich ist der Umfang all dieser Sprachen um Welten grösser als das damalige Basic. Aber man kann sich ja aussuchen, was man an Stoff benötigt. Und MVC-Konzepte bleiben aus dem Informatikunterricht genauso draussen wie die Integrale aus der Mathestunde der 1. Klasse. Die Verbreitung ist ja kein Problem. Dank OSS ist alles überall zu haben. Ein ganzer Sack voll Mainstream-Linux-Distros. Jede hat alles. Auch unter Windows bekommt man alle gängigen Scriptsprachen kostenfrei angeboten.

Für C als Einsteigersprache spricht allerdings die Deklarationspflicht und die statische Typisierung. Wenn ich mich an meine Anfangszeit erinnere, da ich fand Variableninitialisierung ein lästiges Übel und dieser ganze Scheiss mit der strukturierten Programmierung. Ich denke für den Anfang ist so etwas gar nicht mal verkehrt. Nach dem Unterricht ist man dann ohnehin frei das zu tun was man möchte und wird schon irgendwann mal merken, an welche Regeln man sich halten will und an welche nicht.
... unterhält sich hier gelegentlich mangels wunschgemäßer Gesprächspartner mal mit sich selbst.

Antworten