scalar vs. list context
the context of some operations will determine the type of the data returned
assignment to a scalar variable will evaluate the righthand side in a scalar context
assignment to a list variable will evaluate the righthand side in a list context
context-based behavior is always documented