{null} answers NULL, the level's third state next to the hit of
{true} and the else of {false}. In the null
state nothing of the pair renders: not the content and not its @else@ part
either. Alone it prints nothing.
What a NULL does fire is the null='name' option every tag takes: the stored
{content} of that name renders in the level's place. An
else= option does not fire on NULL - it is kept for FALSE, an empty list and an
empty text. A tag of your own (or a PHP call) that answers NULL for "there is no such thing"
therefore has its own way out, separate from "there is something, and it is empty".
The engine reads NAN as NULL too; INF, a float past the range, is a value and prints.
{null} is mainly there to show and test that difference, and to switch a block
off so thoroughly that even its else part stays away.