Mercoledì 4 novembre 2026
L’edizione di oggi
Millebit
AI · Software · QA
Il segnale, non il rumore.

Gli articoli di Millebit sono scritti con l’intelligenza artificiale a partire da fonti citate in ogni pezzo. Come lavoriamo

Sviluppo software

Java integra V8 e CPython senza riscrivere i runtime

Testo scritto con l’intelligenza artificiale a partire da una fonte citata, senza revisione umana prima della pubblicazione.

Project Detroit mostra come usare la Foreign Function & Memory API per incapsulare runtime nativi dentro applicazioni JVM.

Illustrazione generata con l’intelligenza artificiale

A Devoxx Belgium 2026, il team Java di Oracle ha mostrato Project Detroit: con la Foreign Function & Memory API si incorporano i runtime nativi V8 e CPython dentro applicazioni Java, senza riscriverli in Java1.

Negli ultimi anni la FFM ha semplificato le chiamate a librerie native. Il salto, qui, è portare in JVM un intero runtime di linguaggio, come JavaScript o Python, non una singola funzione1.

C’è un precedente. Nashorn, introdotto in JDK 8, ha portato JavaScript nelle applicazioni Java. I costi di manutenzione sono cresciuti. La compatibilità ha iniziato a rincorrere. Deprecato in Java 11, rimosso in Java 151.

Project Detroit indica un’altra via. V8 e CPython restano i runtime dell’industria. Java li carica come componenti nativi e li guida con FFM per chiamate e memoria. Il codice dell’applicazione resta in JVM. L’esecuzione del linguaggio ospite avviene nel suo runtime, aggiornato e diffuso1.

Il cuore tecnico è il “runtime bridging”. Due garbage collector devono convivere. La JVM gestisce il proprio ciclo degli oggetti. V8 e CPython seguono regole diverse di allocazione e rilascio. Chi integra deve coordinare questi schemi per evitare perdite o doppi free1.

Altro punto critico: i virtual thread. Le chiamate native possono bloccarli. La sessione mostra come evitare il pinning, così i virtual thread restano elastici anche quando attraversano il confine nativo1.

La proposta sposta il lavoro: dall’implementare un clone del runtime al costruire un ponte affidabile verso quello reale. FFM fornisce i mattoni, dall’accesso a funzioni alla gestione della memoria. Project Detroit li usa per far girare un runtime esterno all’interno dell’applicazione Java, con pratiche che gli sviluppatori Java già conoscono1.

Nashorn resta l’avvertimento implicito. Ha funzionato, finché la rincorsa alla compatibilità con il mondo JavaScript e i costi di aggiornamento non hanno superato i benefici. Incorporare V8 e CPython evita quella rincorsa: si segue il ritmo dei runtime nativi, non lo si duplica1.

La sessione entra nei dettagli oscuri che di solito restano sotto il cofano. Come passare dati tra heap diversi. Come evitare che un finalizer Java tocchi memoria già liberata da un runtime esterno. Come gestire i callback senza ancorare i thread. Non c’è una sola leva da tirare: serve una serie di accorgimenti, mostrati in sequenza1.

La registrazione, effettuata a Devoxx Belgium 2026, documenta questi passaggi con esempi e trappole da evitare. È un banco di prova utile a chi deve far convivere JVM e un runtime esterno in produzione1.

Se questo percorso attecchisce, l’investimento degli sviluppatori cambia di segno: meno tempo a inseguire la compatibilità di un runtime riscritto, più tempo a rafforzare il ponte con FFM, dove si giocano davvero garbage collector, memoria e thread1.

Fonti

  1. Project Detroit: From Foreign Libraries to Foreign Language Runtimes Inside Java · 4 novembre 2026
Come è nato questo articolo Scritto da un sistema di intelligenza artificiale, con controlli automatici

Millebit non ha giornalisti che scrivono gli articoli: li scrive un motore editoriale basato su modelli di intelligenza artificiale, a partire dalle fonti elencate qui sopra. Prima di uscire, ogni testo passa questi controlli:

  • Rilettura. Un passaggio toglie i tic della prosa generata da un modello, come i contrasti costruiti e le frasi che annunciano invece di informare, senza toccare fatti e fonti.
  • Fedeltà alle fonti. Un passaggio dedicato toglie ogni affermazione che le fonti non sostengono. Valutazione su questo pezzo: 9,5/10.
  • Anti-cliché. Un filtro scarta frasi fatte, enfasi e tic della prosa artificiale: superato.
  • Giudizio editoriale. Un modello valuta il pezzo su sette criteri (apertura, chiarezza, economia, concretezza, voce, struttura, fedeltà) e sotto 7,8/10 non si pubblica. Questo articolo ha preso 8,1/10 dopo 2 revisioni.

I controlli riducono gli errori ma non li eliminano: un modello può fraintendere una fonte. Per le decisioni importanti, risali alla fonte originale. Se trovi un errore, segnalacelo.

Come funziona Millebit, nel dettaglio →

Hai trovato un errore? Segnalacelo
Tipo di segnalazione

Leggiamo ogni segnalazione. Le correzioni fatte sono elencate in Correzioni. L’email, se la lasci, serve solo a risponderti.