Herr Leitenberger, warum gibt es so viele Programmierspachen?

Tja was antwortet man Maschinenbau-Studenten, die schon mit einer für die Lehre entworfenen Programmiersprache ihre Probleme haben, warum es noch so viel mehr Sprachen gibt?

Nun, es gibt natürlich einige Beantwortungsmöglichkeiten: Die eine ist weil bisherige Programmiersprachen etwas nicht hatten was gewünscht war. Diese allgemeine Aussage kann man in viele Unteraspekte unterteilen. Continue reading „Herr Leitenberger, warum gibt es so viele Programmierspachen?“

Die Seuche „C“

Zeit mich mal wieder unbeliebt zu machen, oder besser gesagt zu provozieren. Es geht um die für mich übelste Programmiersprache: „C“. Warum ist C so übel? Nun man könnte es auf den Punkt bringen, das hat dieser Aufsatz getan, der nicht von mir stammt, aber den ich übernommen habe. Fangen wir mal an mit einigen Mythen, die immer genannt werden, wenn es um die Vorteile von „C“ geht:

„C ist maschinennah und daher besonders gut geeignet für die Programmierung von hardwarenahen Programmen wie Betriebssystemen.“

Dieser Mythos mag in den siebziger Jahren gegolten haben, aber danach nicht mehr. Das hat nun auch weniger mit der Sprache zu tun, sondern mit dem Compiler, der den Code erzeugt. Für alle, die nicht so mit Assembler vertraut sind: die meisten Prozessoren haben Befehle die bei bestimmten Situationen geeignet sind und schneller ausgeführt werden als andere, sozusagen Spezialfälle. So verändern die Befehle INC und DEC einen Operanden um jeweils 1 und das Schieben eines Registers entspricht einer Division oder Multiplikation mit 2. Diese Operationen gehen schneller als eine Addition/Subtraktion oder Division/Multiplikation. Continue reading „Die Seuche „C““

Delphi – so gehts nicht

Wie sich sicher im Blog herumgesprochen hat programmiere ich in Delphi. Daher will ich mich auch heute mal damit beschäftigen, vor allem mit der Produktpolitik. Für die die nicht ganz informiert sind: Delphi ist der Nachfolger von Turbo Pascal. Es ist ein System zur Erstellung von visuellen Anwendungen und war in Sachen Bequemlichkeit und Einfachheit lange Zeit führend, bzw., die Trennung von Aussehen der Oberfläche und Code zur Bearbeitung finde ich auch heute noch sinnvoller als dies in den Code einzubetten wie dies bei Java und C# geschieht.

Was mich stört ist die Produktpolitik in etwa im letzten Jahrzehnt. Es gibt hier zwei Tendenzen:

Continue reading „Delphi – so gehts nicht“

Kriterien für eine gute Programmiersprache

Es gibt natürlich eine Reihe von Kriterien. Sicherlich wird der eine oder andere die Codegeschwindigkeit und Größe hervorheben – bald kommt man dann aber auf hersteller- bzw. Plattformspezifische Implementierungen. Man muss dazu nur mal ein einfaches „Hello World“ mit einem C-Compiler erzeugen und hat ein Programm das um ein vielfaches größer ist als dasselbe vor 20 Jahren unter DOS.

Natürlich gibt es noch die Eignung der Sprache – es gibt Scriptsprachen für die Kommandoshell, Sprachen die im Browser ablaufen und Sprachen mit denen man EXE Dateien oder andere Binarys erzeugt. Aber gehen wir mal von der technischen Seite weg, auf die Sprachdefinition. Für mich ist an einer Sprache folgendes wichtig: Continue reading „Kriterien für eine gute Programmiersprache“

Wenn Freaks Programmiersprachen machen….

Der von Michael K. als Rätsel gestellte Aufsatz von Kerningham über Pascal zeigt recht deutlich, warum man eine Programmiersprache oder ein Betriebssystem nicht nutzen sollte, dass von einem Freak erstellt wurde. Man kann sicher einiges an Pascal kritisieren, wie praktisch an jeder Programmiersprache – man wird immer schlauer. Das Hauptproblem von Pascal ist, dass es als Lehrsprache konzipiert wurde. Vielleicht das natürlichste, das ein Uniprofessor tut, aber es ist im praktischen Einsatz Blödsinn. Es macht keinen Sinn Programmieren auf einer Sprache zu lernen und im Einsatz dann eine andere nutzen. So fehlen Pascal wichtige Funktionen in der Ein/Ausgabebibliothek und die Stringverwaltung ist auch ziemlich schlecht implementiert.

Viele Punkte in dem Memo zeigen aber etwas anderes, nämlich die Grundeinstellung die Kerningham hat und die sich in C und Unix wiederfindet. Nämlich das man als Programmierer grenzenlose Freiheit braucht. Nur dazu ein Beispiel: Er bemängelt dass man in Pascal keine Fliesskommazahl an eine Funktion übergeben kann die Integer Zahlen erwartet, wie dies in FORTRAN der Fall war. Continue reading „Wenn Freaks Programmiersprachen machen….“