Pensé que era genial que super y super() ofrecieran diferentes comportamientos, con el último llamando al método principal sin pasarle argumentos .
Este es el primer caso que conozco de un método/palabra clave de Ruby que se comporta de manera diferente dependiendo de si se incluyen los () (más sobre eso aquí ).
¿Existen otros métodos/palabras clave en el lenguaje de programación ruby que muestren un comportamiento diferente dependiendo de si se incluyen los () ?
Es imposible que un método Ruby sepa qué sintaxis se usó para el envío del mensaje, por lo tanto, un método no puede comportarse de manera diferente dependiendo de si el envío del mensaje incluye o no () .
Los métodos en Ruby se comportan igual ya sea que use paréntesis o no. De acuerdo con la guía de estilo de Ruby, puede omitir los paréntesis después de una llamada de método cuando no pasa ningún argumento. Es cierto que algunos programadores de Ruby omiten generosamente los paréntesis, pero esto no hará que sus métodos se comporten de manera diferente.