The more correct analogy is not to C but to binary executable code. But that weakens the analogy because it's much less comprehensible.
Anyway, this is a rabbit hole that one can go down however far one desires. Even time and space are just theoretical constructions. At some point you have to draw a line and talk about "reality" rather than drowning in a depthless sea of metaphysical hedges.
The analogy I was thinking of, is the situation where we find a alien computer, running a twisted raytracing doom. In which a Imp is hunted by hordes of humans with chainsaws. At some point we would probably have a bug compatible C version of this program. But does this mean that the original program consists of C?
But I agree, this is a rabbit hole. ( I am not as sure, that it is depthless. ) And of course, if we would need to carry all this meta physical baggage always, then we could not do anything of practical importance.
Anyway, this is a rabbit hole that one can go down however far one desires. Even time and space are just theoretical constructions. At some point you have to draw a line and talk about "reality" rather than drowning in a depthless sea of metaphysical hedges.