A much simpler class to represent a concatenation of Strings
AbstractRecursiveWithCache has eval(), based on the cache, and
calcuate(), that always calculates.
It is used the redefine CharSequenceConcatenation to support a cache.