In welcher Programmiersprache stammt die Verwendung des Prozentzeichens (%) für Modulo / Rest?

16

In welcher Programmiersprache stammt die Verwendung des Prozentzeichens (%) für Modulo / Rest?

In diesem vorherigen Beitrag 1 wird erläutert, dass das Symbol% ​​wahrscheinlich ausgewählt wurde, weil es einen Schrägstrich enthält, der für eine mit der Division verbundene Operation geeignet ist. Es wird auch der Einfluss der Verwendung des Symbols durch C erwähnt. Ich bin mir jedoch nicht sicher, ob es aus C stammt. Die Programmiersprache B war ein Vorläufer von C, und ich habe ein Benutzerhandbuch für B gefunden (PDF, Seite 12), in dem es heißt:

Der Operator% bezeichnet modulo. Wenn beide Operanden positiv sind, ist das Ergebnis korrekt. Andernfalls ist es undefiniert.

Das Benutzerhandbuch ist jedoch auf das Jahr 1972 datiert, ungefähr als C auftauchte. Das macht es theoretisch immer noch möglich, von C ausgegangen zu sein, aber dann auf B zurückportiert zu werden. Vor diesem Hinweis auf die Verwendung des% -Symbols war es mir auch noch nicht möglich, Spezifikationen für andere Sprachen zu finden.


  1. Für die ich glaube, dass diese Frage kein Duplikat ist: Wenn man fragt, warum die Modulo-Operation grundlegend ist, frage ich mich, wann das Symbol insbesondere Modulo zu bedeuten schien.
DPenner1
quelle
3
BCPL war der Vorgänger von B und C. Der Moduloperator in BCP war rem. eah-jena.de/~kleine/history/languages/… Ebenso wird Algol-W verwendet rem.
BobDalgleish

Antworten:

10

Die früheste Referenz, die ich finden kann, stammt aus der Programmiersprache "B", die Ken Thompson um 1969 mit Dennis Ritchie entwickelt hat. B Reference

Da dies eine Implementierung / Verbesserung von BPCL war, muss ich davon ausgehen, dass der Bediener Teil von BPCL war, aber ich kann keine spezifische Referenz dafür finden.

James Anderson
quelle
4
Anscheinend war es "rem" in BPCL (siehe Kommentar von BobDalgleish)
James Anderson
Basierend auf dem Link könnte es nicht 1969 gewesen sein, WENN die vorgestellte Implementierung die erste war. Honeywell kaufte GE Computer Division erst 1970 und die Zeitung bezog sich definitiv auf einen H6070-Computer. Ritchie und Thompson haben in den 60er Jahren unter multicians.org/unix.html am Projekt MAC gearbeitet .
Dbasnett
Ein weiterer Multics BCPL ref. multicians.org/mgb.html#BCPL
dbasnett