# Set the values of the variables.
>>> a = 'hello '
>>> b = 'world'
>>> c = 'hello world'
# Some values between the variables.
>>> a + b == c
True
>>> a == c - b
True
>>> b = -a + c
True
# Just like numbers except.
>>> a + b == b + a
False
This approach has both attractions and problems. And also decisions. The main issue, I think come to this. Suppose we have
a, A = ('a', -'a')
b, B = ('b', -'b')
b + B == B + b == ''
A + '' == '' + A == A
B + '' == '' + B == B
We've made a big mistake, I think, if we allow Python programmers to accidentally encounter this free group. One way to look at this, is that we want to cut the free group down to a useful size. One way is
>>> 'hello ' - 'world' == 'hello' # I like to call this truncation.
True
Another way is
>>> 'hello' - 'world' # I like to call this subtraction.
ValueError: string s1 does not end with s2, so can't be subtracted
I hope this little discussion helps with naming things. I think this is enough for now.
--
Jonathan