Каков наилучший способ объединения списка строк в объединенную строку с разделителями. Я в основном обеспокоен тем, когда перестать добавлять разделитель. Я буду использовать С# для своих примеров, но я бы хотел, чтобы это было агностическим языком.
EDIT: я не использовал StringBuilder, чтобы сделать код немного проще.
Использовать цикл for
for(int i=0; i < list.Length; i++)
{
    result += list[i];
    if(i != list.Length - 1)
        result += delimiter;
}
Используйте параметр For Loop для установки первого элемента ранее
result = list[0];
for(int i = 1; i < list.Length; i++)
    result += delimiter + list[i];
Они не будут работать для IEnumerable, если вы заранее не знаете длину списка, поэтому
Использование цикла foreach
bool first = true;
foreach(string item in list)
{
    if(!first)
        result += delimiter;
    result += item;
    first = false;
}
Изменение в цикле foreach
От решения Jon
StringBuilder builder = new StringBuilder();
string delimiter = "";
foreach (string item in list)
{
    builder.Append(delimiter);
    builder.Append(item);
    delimiter = ",";       
}
return builder.ToString();
Использование Iterator
Снова от Джона
using (IEnumerator<string> iterator = list.GetEnumerator())
{
    if (!iterator.MoveNext())
        return "";
    StringBuilder builder = new StringBuilder(iterator.Current);
    while (iterator.MoveNext())
    {
        builder.Append(delimiter);
        builder.Append(iterator.Current);
    }
    return builder.ToString();
}
Какие еще существуют алгоритмы?