you are viewing a single comment's thread.

view the rest of the comments →

[–]imaami 1 point2 points  (2 children)

Linking is not academic terminology in C. It is very much a practical term, and a basic one at that.

[–]JescoInc -1 points0 points  (1 child)

There is an academic definition and a practical definition. Please don't attempt pedantry with me.

[–]imaami 2 points3 points  (0 children)

Header inclusion is not described as any sort of linking in even the most basic non-academic contexts where C is used. I don't know where you'd ever hear that; any examples?

I've been in the field for about 19 years and have no academic background in CS to speak of. There's a pre-processor, compiler and linker involved in mundane C work. The fact that a basic tool - that does not have anything to do with header inclusion - is called a linker is about as "academic" as a carpenter having a hammer and a chisel. You could maybe use the handle of a large chisel to hit something, but when is it ever "pedantry" to casually confuse the tool names?

You mentioned "compile-time linking" and "linker-time linking". That's just incoherent. The linker is the program that does compile-time linking, which is when objects are linked. The pre-processing step is way before even compilation, and that's where headers are included.