We investigate connections between the syntactic and semantic
distance of programs on an abstract, recursion theoretic level.
For a certain rather restrictive notion of interdependency of
the two kinds of distances, there remain only few and
"unnatural" numberings allowing for such close relationship.
Weakening the requirements leads to the discovery of universal
metrics such that for an arbitrary recursively enumerable family
of functions a numbering compatible with such a metric can
uniformly be constructed. We conclude our considerations with
some implications on learning theory.