Although the substantial functionality overlap between shells and programming languages has caused many to attempt to combine them, someone a while back (Yossi Kreinin?) had a reason that's probably not what we want: a shell should be optimised for quickly doing specific things, and programming languages should be optimised for concisely doing general things. In particular, this suggests that bare words in shells should default to being literals, and variable substitution will take extra characters, while bare words in programming languages should default to being variables, and literal values will take extra characters.