Programmiersprachen sind eine Adaption zu mathematischen Problemen. Die theoretische Grundlage bietet meist die Sprache der Mathematik, daraus ergeben sich weitere Zweige wie zum Beispiel die Physik, daraus wiederum vieles in der Chemie und so weiter.
Ob es sich bei der Mathematik um eine von "Menschen gemachte Philosophie" oder um die "Sprache des Universums" handelt, ist eine bis heute ungelöste und umstrittene Frage.
Fraglos ist die Mathematik die Grundlage aller Naturwissenschaften, das bedeutet aber nicht den Umkehrschluss, all jenes habe eine Entsprechung in der Natur, was sich mathematisch beschreiben ließe. Bekanntlich lassen sich, und das seit langem, Phänomene in der Natur mathematisch beschreiben, die ohne Bedeutung in der Natur sind (manches vielleicht noch ohne).
Ein einfaches Beispiel ist die Zahl Pi. Wie wir alle wissen, ist sie irrational (d.h. sie besitzt eine unendliche Anzahl sich nicht wiederholender Stellen ohne erkennbare Logik der Abfolge) und man hat Pi für viele Millionen Stellen berechnet.
Physikalisch sind das aber alles nur Zahlenspielereien, denn jenseits der etwa 65. Stelle ist die Zahl Pi bedeutungslos. Denn dann hat man das sichtbare Universum mit der Genauigkeit einer Planck-Länge beschrieben.
Programmiersprachen sind Anwendungen der bekannten mathematischen Theorie, die erstaunlichen rechnerischen Fähigkeiten unserer heutigen Computer sollte uns aber nicht über ihre Grenzen hinwegtäuschen.
Computer rechnen nämlich - von wenigen Spezialsoftwares abgesehen - ausschließlich mit
rationalen Zahlen. Ihre Fähigkeit zu rechnen hört nach einer gewissen Stellengenauigkeit auf, i.d.R. bei um die 20 Stellen. Optimiert wird die Rechengenauigkeit durch eine Darstellung von Zahlen durch Stellen + Exponent, das bedeutet aber nicht, das es keine Aufgaben gäbe, an denen sie nicht per se scheitern müssen.
Im trivialen Falle kommt die Exponitialdarstellung der Zahlen nur dann zu richtigen Ergebnissen, wenn man Zahlen innerhalb bestimmter Größenordnungen miteinander verrechnet - was fast immer der Fall ist. Entweder rechnet man mit dem Universum herum oder mit subatomaren Größen, aber man verrechnet nicht beides miteinander.
Es kann aber auch andere Fußfallen geben ...
Vor ein paar Jahren z.B. veröffentlichte eine Mathematikstudent eine Gleichung, die mit Pi herumrechnete - und das Ergebnis war eine ganzzahlige Zahl, sagen wir 4.
Das erstaunte viele Experten, den stimmte die Gleichung, dann wäre das ein starkes Indiz dafür, das Pi
nicht irrational wäre. Andere bemühten ihre Computer und erhielten: 4. Und wieder: 4.
Bis jemand auf die Idee kam, Spezialsoftware zu verwenden, die die Stellen jenseits der 20. berechnen konnte.
Und da zeigte sich: Es handelte sich im Ergebnis zwar um eine 4 mit 20 Nullen jenseits des Kommas - aber dann ging es mit den Zahlen-Allüren von Pi munter weiter.
Der (normale) Computer mit seinen rationalen Zahlen und einer 20-Stellengenauigkeit konnte dies nicht mehr betrachten: Er
rundete das - falsche - Ergebnis.
Der Binärcode ist die mächtigste Waffe derer sich Menschen bedienen können um herauszufinden woher wir kommen und wohin die Reise geht. Es ist die einfachste Sprache, die man sich vorstellen kann. Sie besteht aus einem Teil und einem anderen Teil. Aus einem einzigen Unterschied, der zwei Zustände beschreibt.
Damit kann man alles beschreiben, denn letztlich besteht alles nur aus einem Teil.
Das stimmt nur unter der Annahme, das man die seit der Antike bestehende Logik aus wahr vs. falsch mit ihren zwei einzig möglichen Zuständen als einzig richtige Logik ansieht.
Spätestens seit Georg Cantor (1845-1918) lies sich aber zeigen, das dies nicht immer der Fall ist.
Die von ihm aufgestellte Kontinuitätshypothese (die er selbst weder beweisen noch widerlegen konnte) erwies sich später als
nicht beweisbar: Weder lässt sich ihre Existenz widerlegen noch ihre Nichtexistenz beweisen: Kurz, sie ist mit unserer Mathematik unentscheibar.
Das mag zunächst eine Spitzfindigkeit sein, es stellt aber eine klassiche Beweismethode in Frage, die seit dem antiken Griechenland in der Mathematik angewendet wird: Der Widerspruchsbeweis.
Der Widerspruchsbeweis stützt sich auf die Annahme, dass es nur zwei entgegengesätzte logische Zustände gibt, wahr und falsch. Man nimmt an, dass eine Behauptung falsch ist, wendet dieselben Methoden wie beim direkten Beweis an und kommt zu unauflösbaren Widersprüchen: Also muss dass Gegenteil richtig sein, die Behauptung ist wahr.
Zumindest aber auf die Cantorsche Kontinuitätshypothese ist dies Art der Beweisführung nicht anwendbar, denn sie unterliegt nicht dem dialogen Zustand aus wahr und falsch.