Why some system functions in T-SQL without parameters have parenthesis while others don't?

function, sql-server, t-sql

Solution

I think the differences are due to whether the function is a part of the ansi sql standard (which current_timestamp is) or whether it is a sql server function.

Problem

I never remember if a system T-SQL function, with no parameters, requires parenthesis, so I wonder if there is a reason. For example: CURRENT_TIMESTAMP is a function that doesn't require parenthesis, while SCOPE_IDENTITY() requires them.

Original source