Comments 15
Дождались!!!
Вот и настаёт новая эпоха, когда python можно без GIL запустить))
Ещё годик-другой и можно использовать😁
Но вот видите, пишут, что однопоточные приложения, наоборот, начинают работать медленнее.
В идеале, конечно, было бы здорово автоматически отключать gil при создании второго потока, а до того работать с ним, раз так быстрее.
Хотя непонятно, почему. По логике ведь в случае одного потока gil не нужен...
Вы немного не понимаете, как работает интерпретатор. Как вы написали: "автоматически включать/отключать GIL", когда исполняется программа, не получится.
Хотя непонятно, почему.
Написано. Это из-за подсчёта ссылок.
Но это, действительно, странно, ведь в no-gil версии используется так называемый «раздельный» счетчик ссылок: ob_ref_local и ob_ref_shared. Второй использует атомики, первый - нет. Но в случае однопоточного приложения ob_ref_shared, по логике, вообще не должен быть задействован, т.к. поток у нас только 1. Исходя из этого, имхо, не совсем понятно, откуда оверхэд на рефкаунтинг в однопоточном приложении.
Наконец-то! Еще поживем, поработаем
Питон становится всё дальше от простого интерпретируемого языка и превращается в совершенно другой язык с аннотациями типов, многопоточностью и прочими приколами.
Причём эти изменения добавляются инкрементально одни поверх других разными костылями, а не придумываются целиком с чистого листа. На мой взгляд, результат получается хуже, чем в typescript и тем более хуже, чем любом в современном языке со статической системой типов.
Не удивлюсь, если с многопоточностью и без JIT будут нестабильно работать какие-то старые библиотеки, а какие-то новые - требовать новых фич.
тем более хуже, чем любом в современном языке со статической системой типов
Dart тоже начинался как динамически типизированный язык, потом завезли статику, но от динамики не отказались. В итоге, теперь можно использовать и то и другое, но мазохистов, конечно, немного)
Возможно, Python в плане типизации идет аналогичным путем
типизация удобна для разработчика и необязательна для скрипта... А по поводу трансформации... Что ж, мы такое уже переживали. Ждем python4
Наоборот же хорошо, пусть вообще выпустят 4.* версию и запретят писать по-старому
Питон как был, так и остается динамически типизированным языком, а аннотации типов лишь для удобства программиста и тайпчекеров типа mypy. Да и, тем более, эти аннотации опциональны.
А что до GIL, это, в принципе, и есть самый большой костыль в языке, живущий там с момента основания, и оч хорошо, что наконец-то его решили выпилить
--without-gil
--disable-gil на самом деле
7 октября 2024 года состоялся релиз стабильной версии языка программирования Python 3.13... Потом ещё три с половиной года для Python 3.13 будут выходить исправления с устранением уязвимостей.
Во всех смыслах позитивная новость :)
Супер! Пошла тестировать :)

ура ура, дождался :)
Релиз Python 3.13