> 2. во время работы программы можно было бы заменять функции.Если так сделать, получится другой язык.
5.1.1.2 Translation phases
1 The precedence among the syntax rules of translation is specified by the following phases.
...
8. All external object and function references are resolved. Library components are linked to
satisfy external references to functions and objects not defined in the current translation. All
such translator output is collected into a program image which contains information needed
for execution in its execution environment.