CPython mund të bëjë që Rust të jetë një varësi ndërtimi e detyrueshme për versionin 3.17

Emma Smith dhe Kirill Podoprigora, pjesë e ekipit kryesor të zhvilluesve të Python, publikuan një propozim të përkohshëm për të shtuar gradualisht mundësinë e përdorimit të gjuhës Rust në kodin bazë të CPython, implementimi referues i gjuhës së programimit Python. Fillimisht, Rust propozohet të përdoret për modulat e opsionalizuar të bibliotekës standarde, të vendosura në direktorinë Modules/. Në perspektivë, deri në versionin 3.17 të Python, Rust mund të bëhet një varësi e detyrueshme për ndërtimin e CPython.

Arsyet kryesore për implementimin e Rust janë sigurimi i një përdorimi të sigurt të memories, parandalimi i gabimeve të kategorisë use-after-free dhe daljeve përtej kufijve të buffer-it, si dhe thjeshtësimi i zhvillimit të kodit të sigurt për lidhje, që është veçanërisht e rëndësishme në dritën e mbështetjes zyrtare për ndërtimin e CPython pa bllokimin global të interpreterit (GIL) për paralelizimin e operacioneve në sisteme me shumë bërthama (projekti free-threaded Python). Rust gjithashtu ofron struktura të dhënash me nivel të lartë, por të performancës së lartë dhe një sistem të zhvilluar të metaprogramimit, duke përfshirë makro të higjienshme.

Plani i implementimit:

  • Python 3.15 (viti 2026): paralajmĂ«rim pĂ«r mungesĂ« tĂ« Rust nĂ« mjedisin e ndĂ«rtimit.
  • Python 3.16 (viti 2027): ndĂ«rtimi Ă«shtĂ« i mundur pa Rust vetĂ«m me flamurin «—with-rust=no».
  • Python 3.17 (viti 2028): Rust mund tĂ« bĂ«het i detyrueshĂ«m nĂ« fazĂ«n e ndĂ«rtimit.

Për ndërveprimin me C API CPython, parashikohet përdorimi i lidhjeve që generohet automatikisht përmes bindgen, dhe jo abstraksioneve të palëve të treta si PyO3, për të shmangur vonesat në përditësimin e API. Problemet e menaxhimit të varësive, ndërtimit të kryqëzuar dhe mbështetjes së platformave të rralla janë në diskutim.

Propozimi i publikuar thekson se të gjitha platformat nga dokumenti PEP 11 mbështeten nga Rust të paktën në nivelin Tier 2. Disa sisteme të daljeve ose niƥë (p.sh., HPPA dhe RISC OS) nuk mbështeten, megjithatë, përqindja e tyre në ekosistemin Python konsiderohet e papërfillshme.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster