import { curry } from '@typed/lambda' /** * Going together a list into a string separated by some string. * @param separator :: string * @param list :: [a] * @returns :: string */ export const join = curry(__join) as { (separator: string, list: ArrayLike): string (separator: string): (list: ArrayLike) => string } function __join(separator: string, list: ArrayLike): string { let str = '' const length = list.length for (let i = 0; i < length - 1; ++i) { str += `${String(list[i])}${separator}` } return str + String(list[length - 1]) }