Added
This commit is contained in:
52
doc/lint/appendix_B
Normal file
52
doc/lint/appendix_B
Normal file
@@ -0,0 +1,52 @@
|
||||
.SH
|
||||
Appendix B
|
||||
.TL
|
||||
The Ten Commandments for C Programmers
|
||||
.AU
|
||||
Henry Spencer
|
||||
.IP 1
|
||||
Thou shalt run \fIlint\fR frequently and study its pronouncements with
|
||||
care, for verily its perception and judgement oft exceed thine.
|
||||
.IP 2
|
||||
Thou shalt not follow the NULL pointer, for chaos and madness await thee at
|
||||
its end.
|
||||
.IP 3
|
||||
Thou shalt cast all function arguments to the expected type if they are not
|
||||
of that type already, even when thou art convinced that this is unnecessary,
|
||||
lest they take cruel vengeance upon thee when thou least expect it.
|
||||
.IP 4
|
||||
If thy header files fail to declare the return types of thy library functions,
|
||||
thou shalt declare them thyself with the most meticulous care,
|
||||
lest grievous harm befall thy program.
|
||||
.IP 5
|
||||
Thou shalt check the array bounds of all strings (indeed, all arrays),
|
||||
for surely where thou typest ``foo'' someone someday shall type
|
||||
``supercalifragilisticexpialidocious''.
|
||||
.IP 6
|
||||
If a function be advertised to return an error code in the event of
|
||||
difficulties, thou shalt check for that code, yea, even though the checks
|
||||
triple the size of thy code and produce aches in thy typing fingers,
|
||||
for if thou thinkest ``it cannot happen to me'',
|
||||
the gods shall surely punish thee for thy arrogance.
|
||||
.IP 7
|
||||
Thou shalt study thy libraries and strive not to re-invent them without cause,
|
||||
that thy code may be short and readable and thy days pleasant and productive.
|
||||
.IP 8
|
||||
Thou shalt make thy program's purpose and structure
|
||||
clear to thy fellow man by using the
|
||||
One True Brace Style,
|
||||
even if thou likest it not,
|
||||
for thy creativity is better used in solving problems than in creating
|
||||
beautiful new impediments to understanding.
|
||||
.IP 9
|
||||
Thy external identifiers shall be unique in the first six characters,
|
||||
though this harsh discipline be irksome and the years of its necessity
|
||||
stretch before thee seemingly without end,
|
||||
lest thou tear thy hair out and go mad on that fateful day when
|
||||
thou desirest to make thy program run on an old system.
|
||||
.IP 10
|
||||
Thou shalt foreswear, renounce, and abjure the vile heresy which claimeth
|
||||
that ``All the world's a VAX'', and have no commerce with the
|
||||
benighted heathens who cling to this barbarous belief,
|
||||
that the days of thy program may be long even though the days of thy
|
||||
current machine be short.
|
||||
Reference in New Issue
Block a user