When you do
So it means the $something is evaluated each time we call it. It's a kind of macro.
In the alert menu uix, we first look if the defined variable is blank and then we display it. But because we don't cache the rendering of the defined variable, it is rendered twice.
In the case of the notifications, this can become costly.