On 8/17/23, segaloco <segaloco(a)protonmail.com> wrote:
IIs the difference here that
standards like the ANSI standards here are more like "you must conform to
this to say that you conform to it" but you do not need to conform to this
to say that you are programming in a given programming language, or to sell
products on a specific platform or in a specific industry, or something like
that.
Here I think you have found the crux of the matter. A big difference
between the ANSI standards for programming languages and the EPA
regulations is the legal requirement for conformance. Nobody who
uses a programming language is under any sort of legal requirement to
conform to the ANSI standard--neither those who write compilers for
the language, nor those who write programs in that language. The only
"enforcement" of the standard that exists is consumer fraud law. If
you market a compiler claiming that it is ANSI standard-compliant, and
it isn't, you could be liable for civil or possibly criminal fraud/
But that's it. Very different from the EPA regulations that you
cited, where failure to conform to the regulations can have very
severe legal and financial consequences.
Hence the lack of widespread use of the standards documents. Proper
ANSI language standard compliance is important to compiler vendors who
claim that their product conforms to the standard. The compiler
groups I have worked in at DEC and Intel have had someone on the front
end team for each language who is an expert on the fine print of the
standard and whose job it is to see to it that the product (the
compiler) stays standard-conformant. This person does have a complete
copy of the ANSI standard on their desk.
Users of compilers claiming to be standard-conformant are under no
legal obligation whatsoever to write standard-conformant programs.
There is thus no reason for them to have a copy of the standard
readily at hand. However, every IT shop I've worked in does have
their own in-house standard for programming practices, and this
includes which features of the programming language are allowed to be
used and sometimes how they are to be used. In a well-run programming
shop, these rules are written down in detail, every programmer has a
copy of them, and they are rigidly enforced--you can't check in your
code if you've violated them. Failure to follow the in-house
programming regulations can also have negative career advancement
implications.
-Paul W.