If we care about the performance about this function, we might change this line to r := make([]string, 0, minLen(a,b)). 
Tradeoff some space for extra allocations.