Pull to refresh

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, это, в принципе, и есть самый большой костыль в языке, живущий там с момента основания, и оч хорошо, что наконец-то его решили выпилить

7 октября 2024 года состоялся релиз стабильной версии языка программирования Python 3.13... Потом ещё три с половиной года для Python 3.13 будут выходить исправления с устранением уязвимостей.

Во всех смыслах позитивная новость :)

Sign up to leave a comment.

Other news