In molte lingue, la sintassi function_name(arg1, arg2, ...)
viene utilizzata per chiamare una funzione. Quando vogliamo chiamare la funzione senza alcun argomento, dobbiamo farlo function_name()
.
Trovo strano che un compilatore o un interprete di script richiederebbe ()
di rilevarlo correttamente come una chiamata di funzione. Se è noto che una variabile è richiamabile, perché non function_name;
sarebbe sufficiente?
D'altra parte, in alcune lingue possiamo fare: function_name 'test';
o persino function_name 'first' 'second';
chiamare una funzione o un comando.
Penso che le parentesi sarebbero state migliori se fossero state necessarie solo per dichiarare l'ordine di priorità, e in altri luoghi fossero facoltativi. Ad esempio, fare if expression == true function_name;
dovrebbe essere valido quanto if (expression == true) function_name();
.
La cosa più fastidiosa secondo me è fare 'SOME_STRING'.toLowerCase()
quando chiaramente la funzione prototipo non richiede argomenti. Perché i progettisti hanno deciso contro il più semplice 'SOME_STRING'.lower
?
Disclaimer: non fraintendetemi, adoro la sintassi tipo C! ;) Sto solo chiedendo se potrebbe essere migliore. La richiesta ()
ha qualche vantaggio in termini di prestazioni o semplifica la comprensione del codice? Sono davvero curioso di sapere quale sia esattamente il motivo.
()
, ma la cosa che spicca nel tuo post è la if (expression == true)
dichiarazione. Ti preoccupi del superfluo ()
, ma poi usi un superfluo == true
:)