Why not just escape the variables instead?
set a Hello
set b '\$a is $a'
set a Goodbye
echo $b
should print "$a is Hello"
It is just a hassle to keep track of what will be expanded in bash scripts and I would really
like the distinction between ' and " to go away.