Владимир Грабко: мой код подходит под все пункты. Он простой (один цикл, который вырезает слайлы. Если вам что-то не понятно, то вы зря занялись программированием. И это подтверждают ваши вопросы тут). Он концептуальный. Он DRY (вместо того, чтобы в разных местах делать циклы для кускования строки, достаточно использовать эту функцию). Он читаемый. Имена переменных говорят сами за себя.
Моя ошибка в том, что я действительно не так понял ваш вопрос. Обычно люди спрашивают абстрактное решение (т.е. принцип, алгоритм, универсальное). Вам же лень было даже изучить, что такое слайсы, вы сразу спросили, как вырезать из ГОТОВОЙ строки ГОТОВЫЕ куски, даже номера назвали. А после того, как ему скинули готовую универсальную функцию, еще и оскорбляет чужой код. Вы отвратительны.
Владимир Грабко: так у меня тоже самое, лол. Вы мой код смотрели хоть? Разница в том, что эта функция универсальна и работает для любой длинны строк, любой длины чанков, любого количества чанков, ибо возвращается слайс их.
И да, вашу задачу я не понял, ибо не думал, что человек, у которого Golang в "о себе" может постить вопросы уровня "как получить слайс строки" или "как пользоваться мапой".
Владимир Грабко: если же вам не нравится форматирование, это это ЕДИНСТВЕННОЕ ВЕРНОЕ форматирование, ибо это форматирует инбоксовая утилита gofmt (в то числе убирание пробелов у операторов второго уровня вложенности). Единственное изменение, которое я бы хотел внести - вынести расчет количества чанков в отдельную функцию.
И да, вашу задачу я понял верно. Данная функция универсальна и будет прекрасно работать и для ваших задач. И основана на слайсах (что вы отметили как решение. Довольно странно говорить, что я не понял задачу, если вы сами такое решение отметили верным)
Владимир Грабко: может, вынесение в разные функции для вас говнокод? Или расчет длины массива заранее, вместо того, чтобы использовать append без необходимости? Или сохранение длинны строки, вместо того, чтобы вызывать len множество раз?
Немного не то. С помощью этого действительно можно генерировать нужные идентификаторы, если использовать ее как библиотеку. Я же имел в виду плагин для ClojureScript-транслятора, чтобы тот при трансляции в JS преобразовывал все to-string в toString, так как сейчас он превращает to-string в to_string.
Спасибо, решил компилированием через go build и запуском уже бинарника. Данный код был нужен лишь для примера, перезапускаться все это будет намного реже.