История изменений
Исправление kaldeon, (текущая версия) :
> пользователи не разобрались и ушли на какой-то другой язык
А есть какие-то наблюдения, подкрепляющие данное предположение? Я вот не припомню постов в стиле “I’m leaving Go for Python.”
На мой взгляд,
1. Есть опрос разрабов Go за второй квартал 2022 [1]. Среди 6% тех, кто не собирается использовать дженерики, только 12% назвали причиной “A steep learning curve or lack of helpful documentation . . .”
2. Верно обратное: на другие языки уходили из-за *отсутствия* дженериков до версии 1.18.
3. Дженерики для клиентского кода — элементарная фича (особенно если есть обратная совместимость). А у авторов библиотек работа такая — разбираться в нюансах.
4. Специфичная заслуга Go: дженерики не породили два мира полиморфизма, а расширили понятие интерфейса. Это позволило сообществу не разделиться на тех, кто продолжил бы писать код по-старому, тех, кто перешёл бы на новое, и всех остальных между двумя огнями. Как следствие, дженерики используются только как крайняя мера. В стандартной библиотеке дженерики до сих пор используются очень консервативно и это никому не мешает и не порождает ожесточённые конфликты.
5. Дженерики существуют в массовой культуре уже десятилетиями, это не академическая инновация. Это не неймспейсы в линуксе, если сравнивать по концептуальному пониманию.
6. «Объяснение явлений через глупость людей — это характерная черта снобов, выдающая их собственный узкий взгляд на мир.»
Исходная версия kaldeon, :
пользователи не разобрались и ушли на какой-то другой язык
А есть какие-то наблюдения, подкрепляющие данное предположение? Я вот не припомню постов в стиле “I’m leaving Go for Python.”
На мой взгляд,
1. Есть опрос разрабов Go за второй квартал 2022 [1]. Среди 6% тех, кто не собирается использовать дженерики, только 12% назвали причиной “A steep learning curve or lack of helpful documentation . . .”
2. Верно обратное: на другие языки уходили из-за *отсутствия* дженериков до версии 1.18.
3. Дженерики для клиентского кода — элементарная фича (особенно если есть обратная совместимость). А у авторов библиотек работа такая — разбираться в нюансах.
4. Специфичная заслуга Go: дженерики не породили два мира полиморфизма, а расширили понятие интерфейса. Это позволило сообществу не разделиться на тех, кто продолжил бы писать код по-старому, тех, кто перешёл бы на новое, и всех остальных между двумя огнями. Как следствие, дженерики используются только как крайняя мера. В стандартной библиотеке дженерики до сих пор используются очень консервативно и это никому не мешает и не порождает ожесточённые конфликты.
5. Дженерики существуют в массовой культуре уже десятилетиями, это не академическая инновация. Это не неймспейсы в линуксе, если сравнивать по концептуальному пониманию.
6. «Объяснение явлений через глупость людей — это характерная черта снобов, выдающая их собственный узкий взгляд на мир.»