Zitat von
Hansa:
Schwachsinn ist höchstens ein Betriebssystem mit einer Programmiersprache zu verwechseln. Um ein Betriebssystem zu programmieren, dafür ist C erste Wahl.
Also stellst du an das darunterliegende Betriebssystem weniger kritische Ansprüche, was die Sprache angeht, als an die Programme, die auf einem Betriebssystem laufen, das in einer Sprache geschrieben wurde, die du als "unsicher", da zu verwirrend einschätzt?
Ich hoffe, du wirst nie Architekt...
BTW: Wie kann man denn ein Betriebssystem mit einer Programmiersprache verwechseln?!?
Zitat von
Hansa:
Aber ich würde niemals ein Anwendungsprogramm, wo NICHT-Programmierer jeden Tag damit zurecht kommen müssen in C schreiben.
Was ist bei Anwendungsprogrammen denn der Unterschied zwischen Programmierern und Nicht-Programmierern? Wenn ich ein Programm bediene, und es funktioniert nicht richtig, weiß ich zwar, warum es nicht geht, aber damit kann ich nur dem Autor eine bessere Fehlerbeschreibung liefern. Ich würde nie versuchen, als Programmierer in Word oder Writer einen Fehler zu finden, bis ich mich nämlich in die paar tausend Zeilen Quellcode eingearbeitet habe, gibt's schon längst drei neue Versionen und ich hätte mir die Arbeit sparen können.
Auf der Anwenderseite gibt es in der Praxis keinen Unterschied zwischen Programmierer und Nicht-Programmierer, auch wenn Programmierer, die was auf sich halten, das gerne von sich behaupten, wenn sie gerade ihre oberflächliche OpenSource-Mentalität verteigigen...
Ich weiß echt nicht, wer dir den floh ins Ohr gesetzt hat, daß C unübersichtlich, schlecht lesbar und zu fehlerverleitend ist. Ich kann das auf jeden Fall nicht bestätigen, und jeder, der C kann (und zwar kann, und nicht nur mal drei Zeilen aus dem
PSDK gelesen und nach Delphi portiert hat), kann das ebenfalls nicht.
Zitat von
Hansa:
Da fältt mir noch was ein: Weiß einer, wieso begin und end in C# {} sind ? Bzw. was dafür die Ursache ist ??
Umgekehrt wird ein Schuh draus. { und } sind in Pascal begin und end, weil Wirth damals dachte, daß seine Studenten eine Sprache schneller lernen, wenn die Sprache zum Menschen kommt, deswegen ist er von abstrakten, durch die Syntax implizierte Strukturierung weggegangen und ist in Richtung beschreibende Schlüsselwörter gegangen, deswegen haben wir heute begin, end, function, procedure und dergleichen.
Bei C stand es damals im Mittelpunkt, ähnlich flexibel zu sein wie in Assembler (jaa, damals hatte man noch Ahnung *g*), aber sich so viel unnötigen Schreibkram wie Möglich vom Hals zu schaffen. Entstanden ist ein Strukturmodell, daß sich hauptsächlich aus der C-Syntax impliziert. Ein "{ /*blah */ }" ist ein Block. Eingeleitet mit einem Zeichen, beendet mit einem Zeichen. Kein Schreibaufwand und für den Parser trotzdem eindeutig erkennbar.
Die "Ursache" für die aus Abkürzungen bestehende und dadurch überaus flexible Syntax besteht also tatsächlich in der Schreibfaulheit damaliger Informatik-Professoren, während die Ursache für die langatmige Pascal- und Basic-Syntax darin liegt, den Studenten möglichst einfach irgendwas beizubringen, was sie vorher noch nicht gesehen haben.
Ich wüsste nicht, wann C ernsthaft auf Lochkarten programmiert wurde...