NULL can be indexed (see Extract) in just about any
  syntactically legal way: whether it makes sense or not, the result is
  always NULL.  Objects with value NULL can be changed by
  replacement operators and will be coerced to the type of the
  right-hand side.
NULL is also used as the empty pairlist: see the
  examples. Because pairlists are often promoted to lists, you may
  encounter NULL being promoted to an empty list.
Objects with value NULL cannot have attributes as there is only
  one null object: attempts to assign them are either an error
  (attr) or promote the object to an empty list with
  attribute(s) (attributes and structure).