The source code for many programs not human readable. There are a number of reasons for this: A compiler (or language translator) has an input language which is a higher level language compare to it's output language. The input language is called source code. If there were reason in the world the output language would be called sink code, but there isn't, so it isn't.

Thus the YACC takes YACC source code and generates C, this C is not source code to YACC but is source code to a C compiler.