Präzision von Programmiersprachen


[ Gliederung ] [ Einführung ] [ Effizienz ] [ Regelmäßigkeit ] [ Einfachheit ] [ Ausdruckskraft ] [ Erweiterbarkeit ]
[ Einschränkbarkeit ] [ Präzision ] [ Sicherheit ] [ Fazit ] [ Literatur und Internetquellen ]

Präzision


Präzision von Programmiersprachen

Ein weiteres wichtiges Element einer Programmiersprache ist die Präzision einer Sprache. Mit den Anfängen von höheren Programmiersprachen tauchte das Problem auf, dass von einer Sprache viele unterschiedliche Dialekte entwickelt wurden. Ein Chaos ist damit natürlich vorprogrammiert. Um das zu verhindert, wurden die Programmiersprachen standardisiert, so dass das Verhalten auf die Sprachkonstrukte genau definiert ist. Nehmen wir mal als Beispiel folgenden C Quellcode:

int i;
i = (1 && 2) + 3;
Die Frage die nun auftaucht ist, ob dies ein gültiger C Code ist und was ist der Wert von i? Man könnte die Frage auf drei verschiedene Art und Weise beantworten.
  1. Man liest die Definition im Sprachhandbuch nach um zu erfahren, was die Anweisung bedeutet.

  2. Man schreibt ein Programm auf dem lokalen Computersystem um zu sehen, was passiert.

  3. Man liest die Definition im Sprachstandard nach.

Die häufigste Vorgehensweise ist wahrscheinlich Option 2. Jedoch hängt das Resultat mit der Implementation der Programmiersprache auf dem jeweiligen System zusammen und die Frage lautet: Ist die Implementation korrekt und wie sieht es aus, wenn ich den Programmcode auf ein anderes System portiere? Hierfür gibt es die Option 3, die genau definiert wie eine Sprache arbeitet. So gibt es in C den ANSI (American National Standards Institute) Standard, wo dies festgelegt wird. Ein weiteres Institut zur Standardisierung ist das ISO (International Organization for Standardization) Institut. So sind viele Sprachen wie z.B. Fortran, Ada, Pascal und C dort standardisiert.
[ Gliederung ] [ Einführung ] [ Effizienz ] [ Regelmäßigkeit ] [ Einfachheit ] [ Ausdruckskraft ] [ Erweiterbarkeit ]
[ Einschränkbarkeit ] [ Präzision ] [ Sicherheit ] [ Fazit ] [ Literatur und Internetquellen ]