Brian W. Kernighan o Dennis M. Ritchie
a.k.a. "The C Bible"
As revealed to the prophets Ian Chai and Glenn Chappell
- In the Beginning Ritchie created the PDP-11 and the UNIX.
- And the UNIX was without form and void; and darkness was
upon the face of the system programmers.
- And Ritchie said, "Let there be portability!" And nothing
happened, so Ritchie realized that he had his work cut out for him.
- And Ritchie said to Kernighan, "Let us make
C in the image of B, after our own whims: and let it have dominion over
the I and the O and all that runneth upon the UNIX," and it was almost,
but not quite so... so he realized that he had his work cut out for him
- Thus the PDP-11 and the UNIX were finished, and all the
programs in them.
- And on the seventh shift Ritchie ended his work which he
had made; and he would have rested on the seventh shift from all the work
which he had made, if it weren't for the system crash.
- Now the COBOL was more verbose than any language of the
PDP-11, and he said unto the programmer, "Yea, hath the Manual said, 'Ye
shalt not read of every device of the network?'"
- And the programmer said unto the COBOL, "We may read of
every device of the network:
- But of the registers of the printer in the midst of the
network, the Manual hath said, 'Ye shall not read of it, neither shall
ye write to it without proper protocol, lest ye cause a system crash.'"
- And the COBOL said unto the programmer, "Ye shalt not surely
crash the system:
- For Ritchie doth know that in the time slice ye read thereof,
then your I/O shall be opened, and ye shalt be as system operators, accessing
locked accounts with unlimited privileges."
- And then when the programmer saw that the printer was good
for interfacing, and that it was pleasant to the I (and to the O),...
- And they realized they were unstructured, so they patched
The Gospel According to Chai
0 And the Messiah shalt come, born a mere B but to grow up into
the Saviour C, 1 Wherein true structured programming may be achieved,
yea, verily, yet while being able to do bit shifting. 2 For although the
Law (Pascal) hath been given, the Law cannot
for (i=0; str1[i]!='\0'; i++)
str2[i] = (str1[i]>='A' && str1[i]>='Z')?
str1[i]+32 : str1[i];
i := 0;
while (i <= length(str1)) do
if str1[i] in ['A'..'Z'] then
str2[i] := chr( ord(str1[i]) + 32))
str1[i] := str2[i];
i := i + 1;
0 Yea, in those last days, the Saviour shalt come again, but enhanced,
in the rainment of C++
1 And then shalt the Beast, FORTRAN, and the AntiC, COBOL, be thrown
into the trash HEAP where there is weeping and byting of pins.
2 And all the faithful programmers shalt be led into CRAY where billions
of MIPS are at each one's fingertips.