martedì, Dicembre 3, 2024

Cos’è Carbon, il nuovo linguaggio di programmazione successore del C++

Carbon, l’ultimo linguaggio di programmazione creato all’interno di Google, è stato presentato oggi come un successore sperimentale di C++.

Nel corso degli anni, Google ha creato alcuni linguaggi di programmazione, alcuni dei quali sono diventati più popolari e importanti di altri. Ad esempio, Golang (o semplicemente Go) è stato creato con lo scopo di migliorare lo sviluppo di server e sistemi distribuiti e da allora è stato adottato dal pubblico. Nel frattempo, il linguaggio di programmazione Dart, originariamente inteso come una sorta di alternativa a JavaScript, non ha raggiunto la popolarità mainstream fino al rilascio di Flutter.

Oggi, alla convention Cpp North a Toronto, come condiviso da Conor Hoekstra che era presente e ha documentato le diapositive, il googler Chandler Carruth ha condiviso la visione di un nuovo linguaggio di programmazione chiamato Carbon. Per impostare la scena, Carruth ha mostrato come molti dei linguaggi di programmazione più popolari di oggi hanno successori che consentono agli sviluppatori di essere rapidamente produttivi e di sfruttare anche il design dei linguaggi moderni.

Gli sviluppatori Android sanno bene che Kotlin funge da successore di Java, proprio come gli sviluppatori iOS sanno che Swift è il successore di Objective-C. TypeScript, di Microsoft, ha completamente migliorato JavaScript, pur rimanendo comodo da usare e in grado di essere “traspilato” di nuovo in JavaScript. C++, che vede una quantità significativa di utilizzo all’interno di Google, è in modo simile una sorta di successore del linguaggio di programmazione C originale.

Mentre alcuni potrebbero suggerire che Rust, originariamente un progetto Mozilla che da allora è cresciuto fino ad avere un seguito pubblico significativo, sia un successore di C++, Carruth si chiede se l’analogia segue ancora. Sebbene Rust sia innegabilmente un ottimo linguaggio per iniziare un nuovo progetto, non ha la stessa “interoperabilità bidirezionale” di qualcosa come Java e Kotlin, rendendo difficile la migrazione costante.

Se Rust funziona per te oggi, dovresti usarlo. Ma spostare un ecosistema C++ in Rust è difficile .

A tal fine, mentre Carbon ha molti degli stessi obiettivi di Rust, come aiutare gli sviluppatori a creare “software critici per le prestazioni”, Carbon è anche progettato per essere completamente interoperabile con il codice C++ esistente. Inoltre, l’obiettivo è rendere la migrazione da C++ a Carbon il più semplice possibile, se lo si desidera.

Per quanto riguarda il motivo per cui uno sviluppatore C++ potrebbe voler prendere in considerazione l’introduzione di Carbon nella propria base di codice, Carruth ha condiviso alcuni punti salienti del linguaggio sul palco.

  • Parole chiave introduttive e una semplice grammatica
  • I parametri di ingresso della funzione sono valori di sola lettura
  • I puntatori forniscono accesso indiretto e mutazione
  • Usa le espressioni per nominare i tipi
  • Il pacchetto è lo spazio dei nomi radice
  • Importa le API tramite il nome del pacchetto
  • Il parametro oggetto esplicito dichiara un metodo
  • Unica eredità; le classi sono finali per impostazione predefinita
  • Generici potenti e con verifica della definizione
  • I tipi implementano esplicitamente le interfacce

Al di là delle caratteristiche del linguaggio stesso, il team di Carbon ha richiamato l’attenzione sul processo di sviluppo che plasmerà il futuro di Carbon. Il codice del progetto è ospitato pubblicamente su GitHub ed è aperto alle richieste pull, mentre la cultura di Carbon è delineata per essere accessibile e inclusiva sia per i dipendenti delle aziende che per i privati.

Detto questo, un aspetto del linguaggio di programmazione Carbon che non è particolarmente ben delineato è il coinvolgimento di Google. Sebbene la presentazione di oggi sia stata condivisa da un googler e gli attuali leader del progetto per Carbon consistono principalmente, ma non interamente, in googler, altrimenti non si fa menzione del fatto che Carbon sia un progetto di Google.

Questo è in realtà intenzionale, poiché mentre Carbon ha avuto inizio all’interno di Google, il team comprende e ha condiviso online che, per avere un successo futuro, Carbon deve essere “un progetto indipendente e guidato dalla comunità”, non guidato esclusivamente dagli usi di Google . Nello stesso commento, Carruth sottolinea ulteriormente che il carbonio è attualmente solo un esperimento, anche se alcune aziende hanno già mostrato precocemente interesse.

Se sei interessato a iniziare con Carbon, puoi scaricare il codice sorgente e sperimentarlo sul tuo dispositivo. Oppure puoi avere un’idea del linguaggio di programmazione Carbon direttamente nel tuo browser grazie all’integrazione con l’ app web gratuita Compiler Explorer .

ARTICOLI COLLEGATI:

ULTIMI ARTICOLI: