private IStringTerm Concat(ITermFactory factory, IListTerm <IStringTerm> strs) { var sb = new StringBuilder(strs.Sum(s => s.Value.Length)); foreach (var s in strs) { sb.Append(s.Value); } return(factory.String(sb.ToString())); }