Googles Carbon-språk kan erstatte C++

På CPP North-konferansen kunngjorde Chandler Carruth, en ledende programvareingeniør hos Google, lanseringen av programmeringsspråket Carbon. Googles Carbon er et eksperimentelt åpen kildekode-språk som er ment å være etterfølgeren til C++, men ikke dets erstatning. I artikkelen ser vi nærmere på Carbon, dets mål, potensial og årsakene til at C++ trenger en etterfølger.
Googles karbonspråk

Hva er galt med C++?

I henhold til TIOBE-indeksen for august 2022C++ ligger på 4. plass etter Python, C og Java. Siden 2001 har C++ aldri falt under 5. plass, noe som indikerer den høye populariteten til dette programmeringsspråket til tross for dets alder (først dukket opp i 1985). C++ har flere fordeler som er avgjørende for utviklingen av ytelseskritisk programvare. Så hvorfor trenger det en etterfølger?Som forklart av Chandler Carruth, kommer C++ til kort når det gjelder å oppnå språkets viktigste mål. Disse inkluderer blant annet støtte for ytelseskritisk programvare, enkel syntaks, språkutvikling, moderne systemer og robust sikkerhet. De spesifikke språkfunksjonene og byråkratiske problemene hindrer C++ i å bli gradvis forbedret.Når det gjelder språkets særegenheter, har C++ akkumulert høy teknisk gjeld gjennom hele utviklingen. Dessuten har det arvet mange eldre funksjoner fra C-språket. Dessuten prioriterer C++-brukere bakoverkompatibilitet for å støtte eksisterende C/C++-økosystemer. Samtidig gjør ikke bakoverkompatibilitet det mulig å fikse den tekniske gjelden, og dermed gjør C++-utviklingsprosessen det enda vanskeligere å implementere forbedringer.Når vi snakker om byråkratiske problemer, bremses prosessen med forbedring av C++ betydelig av en komité (WG21) som fokuserer på standardisering, men ikke design. WG21 bruker trege fossefallsprosesser som fører til forsinkelser i viktige beslutninger. Dessuten har komiteen begrenset tilgang til de fleste C++-eksperter og representerer bare visse selskaper og nasjoner, og ignorerer det store C++-fellesskapet.

Mål for programmeringsspråket Carbon

Som etterfølgerspråk har Carbon arvet den opprinnelige mål for C++ og fikk en ekstra.
Karbonspråk
Basert på en tilnærming til et etterfølgerspråk fokuserer Carbon på tre hovedspørsmål som tar opp de eksisterende C++-utfordringene og gjør at vi kan betrakte Carbon som et lovende prosjekt: interoperabilitet, migrering og språkutvikling. Med utgangspunkt i disse punktene streber Carbon-skaperne etter å bli kvitt den tekniske gjelden i C++, beholde tilgangen til eksisterende økosystemer, sikre raske forbedringer og unngå bakoverkompatibilitet ved hjelp av verktøybaserte oppgraderinger.

Hva er løftene med Carbon?

Informasjonen som er tilgjengelig for øyeblikket, gjør at vi kan betrakte Carbon som et svært lovende prosjekt. Når det gjelder den praktiske siden av det nye programmeringsspråket, hevder Chandler Carruth at vi fra Carbon kan forvente en enklere grammatikk, introduksjonsnøkkelord (dvs. fn og var), et definisjonskontrollert generisk system og en bratt læringskurve. Carbon vil arve C's høye ytelse og unngå de største ulempene.

I tillegg sier Carbon-skaperne at Carbon vil være et programmeringsspråk med åpen kildekode og fullt kompatibelt med C++. Carbon-kode er veldig lik C++-kode, og i mange tilfeller er de nesten identiske. Dessuten kan Carbon-kode integreres i C++-kode. Så C++-utviklere som ønsker å bytte fullt ut til Carbon, vil ha en verktøykasse for automatisk å oversette C++-biblioteker til kode i det nye språket. Omvendt migrering er også mulig. I fremtiden kan disse bibliotekene brukes i et eksisterende C++-prosjekt. Alle Carbon-verktøyene ligger på GitHub og distribueres under Apache 2.0-lisensen. Så langt er det en demo Carbon-tolk tilgjengelig.

En viktig del av det eksperimentelle Carbon-prosjektet er styringsstrukturen. Carbon-teamet styres av prinsippene om inkludering og åpenhet. Styringsstrukturen i Carbon er utformet for rask beslutningstaking, fleksibilitet og rask utvikling av prosjektet. Alle viktige beslutninger tas av Carbon-lederne, for øyeblikket representert ved Chandler Carruth, Kate Gregory og Richard Smith. Siden Carbon-prosjektet er basert på en utviklingsmodell med åpen kildekode, kan alle brukere sende GitHub-forespørsler for å foreslå endringer i prosjektet og drive utviklingen av Carbon-språket.

For øyeblikket jobber Google-ansatte med programmeringsspråket Carbon som et internt prosjekt. Det er imidlertid planlagt å redusere selskapets engasjement i prosjektet, siden utviklerne forstår at Carbon må være et uavhengig og samfunnsdrevet prosjekt for å lykkes i fremtiden.

Bunnlinjen

Det er viktig å forstå at Carbon er et eksperimentelt prosjekt, og det er for tidlig å si entydig at Carbon er en fullverdig etterfølger til C++. I henhold til Carbon-veikartet skal utviklingen av de viktigste språkkonstruksjonene være fullført innen utgangen av 2022, og dette er nøyaktig tidspunktet da Carbon 0.1 skal utgis. Det vil ta tid å vurdere suksessen til prosjektet, men vi kan allerede snakke om de store utsiktene til Carbon-programmeringsspråket som etterfølgeren til C ++ basert på de annonserte funksjonene og prinsippene for utvikling.
Takk for din vurdering!
Takk for din kommentar!

Innholdsfortegnelse

Ranger denne artikkelen:

4/5

4.8/5 (45 anmeldelser)

    Kontakt oss

    Bestill en samtale eller fyll ut skjemaet nedenfor, så kontakter vi deg når vi har behandlet forespørselen din.

    Send oss en talemelding
    Legg ved dokumenter
    Last opp fil

    Du kan legge ved én fil på opptil 2 MB. Gyldige filformater: pdf, jpg, jpeg, png.

    Ved å klikke på Send, samtykker du til at Innowise behandler dine personopplysninger i henhold til våre Retningslinjer for personvern for å gi deg relevant informasjon. Ved å oppgi telefonnummeret ditt samtykker du i at vi kan kontakte deg via taleanrop, SMS og meldingsapper. Priser for samtaler, meldinger og data kan gjelde.

    Du kan også sende oss en forespørsel
    til contact@innowise.com

    Hva skjer videre?

    1

    Når vi har mottatt og behandlet forespørselen din, tar vi kontakt med deg for å beskrive prosjektbehov og signerer en taushetserklæring for å sikre konfidensialitet.

    2

    Etter å ha undersøkt dine ønsker, behov og forventninger, utarbeider teamet vårt et prosjektforslag forslag med arbeidsomfang, teamstørrelse, tids- og kostnadsestimater.

    3

    Vi avtaler et møte med deg for å diskutere tilbudet og spikre detaljene.

    4

    Til slutt signerer vi en kontrakt og begynner å jobbe med prosjektet ditt med en gang.

    pil