LINUX.ORG.RU

История изменений

Исправление tp_for_my_bunghole, (текущая версия) :

копипаста, кодогенерация и тонны лапши, как следствие, полное несоответствие DRY и вытекающие из этого проблемы — отлично.

Так generics и templates это кодогенерация в виде тонн лапши.
Генерация контейнеров по типам данных?
В Go встроенный тип Map:

map[string]int // массив чисел, индексация строками
map[*T]struct{ x, y float64 } // массив структур, индекс указатель на T
map[string]interface{} // массив любых типов(пустой интерфейс), индекс строками

Функции наверно лучше обобщать интерфейсами(duck typing).
Код Go производит впечатление обратное «лапше».

Исходная версия tp_for_my_bunghole, :

копипаста, кодогенерация и тонны лапши, как следствие, полное несоответствие DRY и вытекающие из этого проблемы — отлично.

Так generics и templates это кодогенерация в виде тонн лапши.
Генерация контейнеров по типам данных?
В Go встроенный тип Map:

map[string]int // массив чисел, индексация строками
map[*T]struct{ x, y float64 } // массив структур, индекс указатель на T
map[string]interface{} // массив любых типов(пустой интерфейс), индекс строками

Функции наверно лучше обобщать интерфейсами(duck typing).