Довольно простой вопрос здесь, но это действительно потрясает меня.Сохранение строковой переменной от деструкции
У меня есть небольшая функция здесь:
(defn something
[start-url n]
(loop [urls start-url index n]
(if (= index 0)
(set urls)
(recur
(flatten (pmap #(str *base-url* %) urls))
(dec index)))))
Я изменил важные части кода, но это в основном просто нужно отобразить через список строк, и повторялись. Однако, когда я начинаю цикл, urls естественно разрушает start-string в список символов, чего я не хочу.
В то же время, если я
(loop [urls '(start-url) index n]
он возвращает Unsurprisingly SEQ с невычисленного старт-адресов.
Все, что я хочу сделать, это взять мой стартовый url и сохранить его как строку. Есть идеи? Это должно быть действительно просто, но, увы, это ускользает от меня.
Является ли «start-url» одним URL-адресом или их набором? – noisesmith
Я вызываю функцию с одним URL, но я хотел бы начать цикл с ним как с коллекцией. – Caleb