The 2^^1010
immediately evaluates to 10, as seen from,
BaseForm[2^^1010,16]//FullForm (*Out[]:= BaseForm[10,16]*)
When we replace the 1010 with a symbol x
, The outer wrapper BaseForm cannot immediately evaluate its argument in x
, resulting in the expressions about incomplete expression. I see it similar to how we can't add the following although the lists themselves will sum.
MatrixForm[{{3,2},{3,4}}]+MatrixForm[{{1,2},{3,4}}] (*Out[]:= Two matrices in textbook notation. *)
whereas,
{{3,2},{3,4}}+{{1,2},{3,4}}; (*Out[]:= {{4,4},{6,8}} *)