Why not just escape the variables instead?
set a Hello
set b '\$a is $a'
set a Goodbye
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.