Nice story!
Concerning that point, you can find some interesting discussions here:
https://fortran-lang.discourse.group/t/some-basic-questions-on-fortran/825
Note also that the interoperability with C introduced the value
statement to pass an argument by value. But it is not limited to calling C functions and can be used in other cases.
See for example: IBM Documentation