CPython può rendere Rust una dipendenza di compilazione obbligatoria per la versione 3.17

Emma Smith e Kirill Podoprigora, membri chiave del team di sviluppo di Python, hanno pubblicato una proposta preliminare (Pre-PEP) per l'integrazione graduale del linguaggio Rust nel codice sorgente di CPython, l'implementazione di riferimento del linguaggio di programmazione Python. Inizialmente, Rust è proposto per moduli facoltativi della libreria standard, collocati nella directory Modules/. In prospettiva, con la versione Python 3.17, Rust potrebbe diventare una dipendenza obbligatoria per la compilazione di CPython.

Le principali ragioni per adottare Rust sono garantire un lavoro sicuro con la memoria, prevenire errori di tipo use-after-free e buffer overflow, nonché semplificare lo sviluppo di codice thread-safe, un aspetto particolarmente rilevante alla luce del supporto ufficiale per la build di CPython senza il global interpreter lock (GIL) per parallelizzare operazioni su sistemi multi-core (progetto free-threaded Python). Rust offre anche strutture dati altamente performanti e un avanzato sistema di metaprogrammazione, comprese le macro hygeniche.

Piano di implementazione:

  • Python 3.15 (anno 2026): avviso in caso di assenza di Rust nell'ambiente di build.
  • Python 3.16 (anno 2027): la build è possibile senza Rust solo con il flag "--with-rust=no".
  • Python 3.17 (anno 2028): Rust potrebbe diventare obbligatorio in fase di build.

Per interagire con l'API C di CPython, si prevede di utilizzare binding generati automaticamente tramite bindgen, piuttosto che astrazioni di terze parti come PyO3, per evitare ritardi nell'aggiornamento dell'API. Le questioni di gestione delle dipendenze, cross-compilazione e supporto per piattaforme rare sono in fase di discussione.

Nella proposta pubblicata si sottolinea che tutte le piattaforme nel documento PEP 11 sono supportate da Rust almeno a livello Tier 2. Alcuni sistemi obsoleti o di nicchia (come HPPA e RISC OS) non sono supportati, ma la loro quota nell'ecosistema Python è considerata trascurabile.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster