code: function assimilateSimilarTokens(xs, a) {
    var b  = last(xs)
    var ys = butLast(xs)
    return !b?       [a]
    :      /* _ */   ys.concat( b.canAssimilate(a)?  [b.assimilate(a)]
                              : /* otherwise */      [b, a]) }
docs: ### Function: assimilateSimilarTokens(xs, a) - assimilateSimilarTokens :: ([Token], Token) → [Token]