In modern usage, with the advent of digital typography, "font" is frequently synonymous with "typeface". In particular, the use of "vector" or "outline" fonts means that different sizes of a typeface can be dynamically generated from one design. Each style may still be in a separate "font file"—for instance, the typeface "Bulmer" may include the fonts "Bulmer roman", "Bulmer italic", "Bulmer bold" and "Bulmer extended"—but the term "font" might be applied either to one of these alone or to the whole typeface.
While I appreciate your semantic formalism, considering that my fonts are collected and managed in my Font Book rather than my Typeface book, I think you've lost that battle, for now.
"Fonts" are computer code. Typefaces are what you see, unless you're editing the font that will set the type on your screen.