Test cases: - `expression(1+2)`: one-element list of ``` language(symbol `+`, double(1), double(2)) ``` - `expression(u, v, 1+ 0:9)`: three-element list of ``` symbol `u`, symbol `v`, language(symbol `+`, double(1), language(symbol `:`, double(0), double(9))) ``` - `expression(NULL)`: one-element list of ``` NULL ```