Then does the function have a pole at infinity , or does it mean there is a neighborhood N of infinity so that there are points contained in N which are poles of f ?
If a function f is modular , it also means that it is meromorphic at infinity .
Does this mean that f does not need to have a pole at infinity ?
A function $f(z)$ meromorphic on $\mathbb{C}$ can be extended to a meromorphic function on $\mathbb{P}^1$ if in a neighborhood of "infinity" is meromorphic, that is, it could have a pole or not, but it does NOT have an essential singularity. This is equivalent to say that the function $f(\frac{1}{z})$ is meromorphic at zero. For example, any polynomial can be extended to a meromorphic function at infinity. BUT, I leave to you to prove that $e^z$ CAN'T be meromorphic at infinity.