1
Because that’s what the template language is designed to do. As the docs state:
If the resulting value [of looking up a variable] is callable, it is called with no arguments. The result of the call becomes the template value.
Without this, there would be no way of calling methods in templates, since the template syntax does not allow using parentheses.
Source:stackexchange.com