Всем привет, в данном контексте "are only free when they are called externally" т.е. не в child contracts?
If a view function is called internally from another function in the same contract that is not a view function, it will still cost gas. This is because the other function creates a transaction on Ethereum, and will still need to be verified from every node. So view functions are only free when they're called externally.