Programming Language
Brian W. Kernighan · Dennis M. Ritchie

"The C Bible"
As revealed to the prophets Ian Chai and Glenn Chappell

Chapter 0
0	In the Beginning Ritchie created the PDP-11 and the UNIX.
1	And the UNIX was without form and void; and darkness was upon the
face of the system programmers.
2	And Ritchie said, "Let there be portability!" And nothing happened,
so Ritchie realized that he had his work cut out for him.
25	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 again.
Chapter 1
0	Thus the PDP-11 and the UNIX were finished, and all the programs in
1	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.
Chapter 2
0	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?'"
1	And the programmer said unto the COBOL, "We may read of every
device of the network:
2	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.'"
3	And the COBOL said unto the programmer, "Ye shalt not surely crash
the system:
4	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."
5	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),...
6	And they realized they were unstructured, so they patched RATFOR
The Gospel
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')? 32 : 0;
but must
	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;

The Revelation
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.

Back to Ian's website.
If you spot any mistakes, please let me know.