- Es gibt verschiedene Konventionen. Konventionen in Mathematik, Logik und angewandten Wissenschaften sowie Konventionen in der IT. Die ersten sind viel älter.
- Die wissenschaftlichen Sprachen sollen das Leben IHRER Benutzer angenehmer machen. Der Benutzer wird als Wissenschaftler gesehen, der von Zeit zu Zeit einen Algorithmus realisieren oder eine Theorie überprüfen kann, ohne etwas wirklich Neues lernen zu müssen. Daher MÜSSEN die Sprachen für Wissenschaftler Nicht-IT-Standards entsprechen. Weil sie nicht für den Einsatz von IT-Mitarbeitern gedacht sind. Sie entsprechen ANDEREN Standards und das ist gut wegen des Zielhörers. Da die gute SW-Benutzeroberfläche und die Sprache die SW-Benutzeroberfläche ist, muss sie auf den Anforderungen des Benutzers und nicht des Codierers basieren.
- Unsere IT-Standards sind Industriestandards. IT ist Industrie. Wissenschaft ist keine Industrie. Wissenschaftler sind stolz darauf. Und sie würden widerwillig alles aus unserer Praxis in ihre aufnehmen. Und sie mögen überhaupt keine Standards. Und niemand mag ausländische Standards. Wenn also jemand eine wissenschaftliche Sprache entwickeln würde, die den IT-Standards entspricht, würde sie sich aufgrund der Abneigung des Zielhörers kaum gut verkaufen, selbst wenn sie objektiv bequemer wäre.
Und selbst wenn wir nur nach IT-Standards urteilen ... Entschuldigung, welche Standards meinen Sie? Haben Sie versucht, einen Prog in APL oder SNOBOL zu schreiben? Diese beiden Sprachen sind meiner Meinung nach die mächtigsten in geeigneten Bereichen (Zählen und Zeichenfolgen). Die Syntax ist jedoch SEHR seltsam (und effektiv). Das Lesen einer Zeile APL-Code kann Tage dauern. Auf der anderen Seite ist eine solche Linie ein ernstes Stück SW. Sie würden mit Tränen der Erleichterung nach Mathlab zurückkehren.
Was "=" betrifft, haben viele Menschen Probleme, sich daran zu gewöhnen, dass es nicht Gleichheit, sondern Zuordnung ist. Übrigens, in Pascal ist es Gleichheit und Zuordnung ist ": =".
Und Sie denken wirklich, dass == für Gleichheit natürlicher ist? Im Gegenteil, Mischen = und == ist der häufigste Fehler in der C-Programmierung. Er tritt selbst in modernen IDEs mit ihrer automatischen Steuerung sehr häufig auf.
Über die Indizierung von 1 - es ist die einzige natürliche. Als Kind hatten Sie Gedichte und Lieder gelernt, in denen Sie gezählt haben: eins, zwei, drei ... und nicht 0,1,2 ... In der Schulmathematik haben wir gelernt, dass das Zählen bei 1 beginnt und bei 0 gehört nicht zu natürlichen / zählenden Zahlen. Nur mit der Definition von Funktionen kommen nicht natürliche Indizes. Immerhin wurde die 0 viele tausend Jahre erfunden, nachdem unser Vorfahr einen Finger erhoben hatte.
0-Start war einfacher zu realisieren und begann sofort nach dem Erscheinen von C mit der IT-Praxis. In Fortran, der ersten Sprache, wird jedoch die 1-Indizierung verwendet. Gleiches gilt für andere Sprachen der vorindustriellen Epoche.
Und ja, ich hatte Dyjkstras Artikel über die Natürlichkeit der 0-basierten Zählung gelesen. Und stimme seiner Argumentation überhaupt nicht zu. Es ist nur für Musiker selbstverständlich. Und selbst 0 Enthusiasten, die die C- und Java-Compiler erstellen, zählen die Zeilen des Codes ab 1!