# Frequency Response Notation

Why do people sometimes write $H(e^{j\omega})$, some others use $H(\omega)$ and even others use $H(f)$ with $\omega=2\pi f$ to describe the frequency response of a filter or a spectrum? Is there any "real" difference in meaning or is it just convention?

For discrete-time systems, there really isn't any difference in meaning between the definitions that you gave, especially between the first two ($H(e^{j\omega})$ and $H(\omega)$). The first is just a bit more explicit that the function $H$ refers to the (complex-valued) amplitude of the system's output when its input is a complex exponential with angular frequency $\omega$. This is a bit verbose, so often you'll see it trimmed to the latter representation. $H(f)$ is not typically used for discrete-time systems, as $f$ refers to a continuous-time frequency in Hertz; without a specified sampling frequency, there isn't a well-defined mapping between $f$ and $\omega$, the more natural frequency concept for discrete-time systems.
$H(f)$ is typically only specified for continuous-time systems, where it competes with the alternate notation $H(\omega$). In any mathematical expression where you use one of them, you can massage the expression to use the other, sometimes involving factors of $2\pi$ that need to be inserted in various places to make the math work out. As a general rule, in my experience, the $\omega$ form is used more commonly in control systems contexts, whereas communications engineers seem to prefer the $f$ form. However, as I said, there's really no functional difference between the two.