I ka hoʻāʻo ʻana e hoʻololi i ka C ++ hanohano akā lohi, ua hoʻolauna nā mea noiʻi Google i kahi ʻōlelo hoʻolālā hou "hoʻokolohua" hou i kapa ʻia ʻo Carbon.
Hiki iā Carbon ke lilo i ʻōlelo hope no C++, kahi e hoʻomaka ai i kahi ʻōlelo maʻalahi no nā mea hoʻomohala i kahi ʻōlelo hou e kamaʻilio ana i nā manaʻo hoʻomohala hou e like me ka palekana hoʻomanaʻo a me nā generics.
E like kēia me ka hana ʻana o Microsoft i ka Typescript e hoʻohou iā JavaScript a me Kotlin e hoʻoikaika i nā nāwaliwali ma Java.
Ua hoʻomohala ʻo Google i kekahi mau ʻōlelo papahana i nā makahiki, ua loaʻa kekahi o ia mau mea i kaulana a kaulana.
No ka laʻana, ua hoʻomohala ʻia ʻo Golang (a i ʻole ʻo Go wale nō) e hoʻomaʻamaʻa i ka hana ʻana o nā kikowaena a me nā ʻōnaehana puʻupuʻu a ua apo ʻia e ka lehulehu.
ʻO Dart 'ōlelo hoʻolālā, i hana ʻia ma ke ʻano he mea pani JavaScript, ʻaʻole i kaulana a hiki i ka hoʻomaka ʻana o Flutter.
Ua hōʻike ʻo Chandler Carruth, he limahana Google, i kona manaʻo no kahi ʻōlelo hoʻolālā hou i kapa ʻia ʻo Carbon ma Iulai 19, 2022, ma ka ʻaha kūkā Cpp North ma Toronto, wahi a Conor Hoekstra, ka mea i hele a hoʻopaʻa i nā paheʻe.
No ka hoʻonohonoho ʻana i ka hiʻohiʻona, ua hōʻike ʻo Carruth i ka loaʻa ʻana o kekahi o nā ʻōlelo papahana makemake nui ʻia o kēia mau lā e hiki ai i nā mea hoʻomohala ke hoʻohua wikiwiki a pōmaikaʻi hoʻi i ka hoʻolālā ʻōlelo o kēia wā.
E hoʻomaka kākou me ka hoʻolauna maʻamau o ka ʻōlelo hoʻolālā Carbon, me kona mau hiʻohiʻona, ke kumu o ka hana ʻana a Google, a me nā mea hou aku.
Introduction to Carbon Programming language
Ma Iulai 19, 2022, ua hōʻike ʻo Google iā Carbon ma ke ʻano he ʻōlelo papahana hou loa āna i hana ai. Ua manaʻo ʻia e hoʻololi iā C++ ma ka hoʻokolohua.
Mahalo a i ʻōnaehana generics, ka mea e hoʻopau i ka pono e nānā pālua i ke code no kēlā me kēia instantiation, e kūkulu ʻia ʻo Carbon ma ke kumu o nā manaʻo hoʻolālā hou.
Ma ka hopena o ka makahiki, hoʻolālā ka hoʻolālā e hāʻawi i kahi mana hana maʻamau (version 0.1).
He mea koʻikoʻi ka hoʻomanaʻo ʻana i ka C++. ʻO kekahi o nā kumu kumu o nā hemahema palekana ʻo ia nā pilikia hoʻomanaʻo.
ʻO ka hoʻomohala ʻana i nā loiloi palena ikaika, ʻoi aku ka nui o ka ʻimi ʻana i nā mokuʻāina ʻike ʻole, a me ke ʻano hana debug kūkulu paʻamau nā pahuhopu āpau o ka hui Carbon. Manaʻo nā mea hana e hana i kahi ʻāpana Carbon palekana i ka manawa.
Eia naʻe, eia kekahi mau hiʻohiʻona koʻikoʻi o ka ʻōlelo papahana hou:
- No ka inoa ʻana i nā ʻano, hoʻohana i nā ʻōlelo.
- Nā generic ikaika me ka nānā wehewehe
- Hoʻokō pono nā ʻano i nā interface
- nā māmalaʻōlelo hoʻolauna a me ka grammar kumu
- Hiki i nā kuhikuhi ke komo ʻole a me ka hoʻololi ʻana.
- Heluhelu-wale na waiwai no na palena hookomo hana.
- ʻO ka waihona inoa kumu ka pūʻolo.
- Hiki ke hoʻokomo ʻia nā API me ka hoʻohana ʻana i kā lākou inoa pūʻolo.
- Hōʻike ʻia kahi ʻano hana ma o kahi ʻāpana mea kikoʻī.
- Pau nā papa ma ka paʻamau; hoʻokahi wale nō hoʻoilina
Nā hiʻohiʻona o Carbon
ʻO kēia a me ka ulu ʻana
- He mea maʻalahi ka hoʻonui ʻana ma waena o nā mana Carbon.
- ʻO nā kumu ʻōlelo ikaika, ʻoi aku ka nui inā ua hoʻohana ʻoe iā C++, a maʻalahi hoʻi e aʻo
- ʻO nā kumu palekana a me ke ala ʻanuʻu i kahi ʻāpana palekana hoʻomanaʻo
Welina mai i ke kaiāulu o ka open source
- He kaiaulu e ho'āʻo nei e pumehana, ʻae, a kono
- ʻO kāna mau pahuhopu a me kāna mau mea nui he ʻokoʻa a he aupuni ikaika
- He hoʻolālā holoʻokoʻa me ka mea hoʻopili, nā hale waihona puke, nā palapala, nā mea hana, ka hoʻokele pūʻolo, a me nā mea hou aku
ʻO ka wikiwiki a kūpono me C++
- E hana pū me ka C ++ pāʻālua ua loaʻa iā ʻoe, me ka hoʻoilina a me nā mamana
- Me LLVM, hoʻohālikelike ka hana me C++ a me ka loaʻa haʻahaʻa haʻahaʻa i nā bits a me nā helu
- ʻO nā hana wikiwiki a hiki ke hoʻonui ʻia a kūpono hoʻi me kāu ʻōnaehana kūkulu C++
No ke aha i kūkulu ai ʻo Google i ka ʻōlelo hoʻolālā Carbon?
Ke hoʻomau nei nā polokalamu koʻikoʻi hana i ka hapa nui i kākau ʻia ma C ++, nona nā codebases nui a hoʻonui a hoʻonui.
Eia nō naʻe, pilikia ia i ka holomua ʻana a me ka hoʻokō ʻana i nā koi o nā mea hoʻomohala e like me ka mea i ʻōlelo ʻia ma luna, ʻo ka hapa nui ma muli o ka hōʻiliʻili ʻana i nā makahiki o ka ʻaiʻē ʻenehana.
He mea paʻakikī loa ka hoʻomaikaʻi ʻana i ka C++ ma muli o ka ʻaiʻē ʻenehana i loaʻa iā ia a me nā pilikia me kāna kaʻina hoʻomohala.
ʻO ke ala kūpono no ka hoʻoponopono ʻana i kēia mau pilikia, ʻo ia ka hoʻomaka ʻana me kahi kumu ʻōlelo ikaika, e like me ka ʻōnaehana generics o kēia manawa, ka hoʻolālā code modular, a me ka syntax pololei, pololei, ma mua o ka hoʻoili pololei ʻana i ka kuʻuna o C a i ʻole C++.
ʻO Go, Swift, Kotlin, Rust, a me nā ʻōlelo ʻē aʻe he nui i hāʻawi ʻia i kahi ʻike hoʻomohala koʻikoʻi. Pono nā mea hoʻomohala i hiki ke hoʻohana i kekahi o kēia mau ʻōlelo i kēia manawa.
ʻO ka mea pōʻino, hoʻopilikia nui ʻia ka lawe ʻana a me ka neʻe ʻana mai C++ e nā hoʻolālā o kēia mau ʻōlelo. ʻO kēia mau pilikia e pili ana i ka hana ma luna o ke poʻo a me nā hoʻololi i ka hoʻolālā idiomatic o ka polokalamu.
ʻAʻole hoʻāʻo ʻo Carbon e hoʻomaikaʻi mālie iā C++; akā, he hoʻolālā ʻōlelo hope. Aia kona manaʻo i ka C ++ interoperability, a me ka ʻae ākea a me ka neʻe ʻana no nā mea hoʻomohala a me nā codebases e hoʻohana nei iā C++.
Pono ka ʻōlelo pani C++:
- ʻO ka hana i hoʻohālikelike ʻia me C++ he ʻano koʻikoʻi no nā mea hoʻomohala.
- ʻO kahi pihi hoʻonaʻauao maʻalahi a me ka pae o ka kamaʻāina no nā mea polokalamu C++
- ʻO ka neʻe ʻana i hiki ke hoʻonui ʻia a loaʻa pū kekahi unuhi kumu-i-kumu idiomatic C++ code.
- Hōʻike like a me ke kākoʻo no ka hoʻolālā a me ka hoʻolālā ʻana o nā polokalamu o kēia manawa.
- ʻO ka launa pū ʻana me C ++ ʻaʻole maʻemaʻe a bidirectional, e ʻae ana i kekahi hale waihona e hoʻohana i ka Carbon me ka ʻole o ka lawe ʻana i ke koena o ka waihona.
Me kēia hoʻolālā, hoʻohui ʻo Google i ka kaiaola i loaʻa mua no C++ a hoʻokomo i nā hoʻopukapuka o kēia manawa, codebases, a me nā kaiāulu hoʻomohala.
Ua hoʻohana kekahi mau ʻōlelo i kēia ala no nā kaiaola like ʻole, a ke ʻimi nei ʻo Carbon e pāʻani i kahi hana like me C++ i kēia mau kūlana:
- Java – Kotlin
- JavaScript – TypeScript
- C++ – Kalapona
C++ VS Kalapona Code
Pono e loaʻa i ke kalapona kahi ʻāpana aʻo haʻahaʻa inā he mea hoʻomohala C++ ʻoe. Hoʻokumu ʻia ia me kahi pūʻulu paʻa o nā kūkulu grammatical pono ke kani kūlohelohe a maʻalahi ke heluhelu a hoʻomaopopo.
He laʻana o ka code C++:
Ua pili kēia code Carbon i:
ʻO Carbon vs Rust
ʻO kekahi ʻōlelo ʻē aʻe i hoʻolālā ʻia e hoʻokō i nā koi o nā noi hana hoʻomanaʻo palekana i kapa ʻia ʻo Rust.
No laila no ke aha e hoʻohana ʻole ai iā Rust?
ʻOiai ke hoʻopaʻapaʻa nei kekahi ʻo Rust, ka mea i hoʻomaka ma ke ʻano he papahana Mozilla a ua ulu aʻe a loaʻa i ka lehulehu lehulehu e hahai ana, he mea pani ia no C ++, kanalua ʻo Carruth inā paʻa mau ka like.
He ʻōlelo maikaʻi loa ʻo Rust e hoʻomaka ai i kahi papahana hou, akā no ka nele o ka "bidirectional interoperability" o nā ʻōlelo e like me Java & Kotlin, he mea paʻakikī ke hoʻololi mālie iā ia.
Hāʻawi ʻo Carruth i kahi haʻiʻōlelo ma CPP North a paipai i ka poʻe e hoʻohana nei iā Rust e hoʻomau i ka hana. Pono nā mea hoʻomohala i loaʻa i nā codebase C++ nui e paʻakikī ana e hoʻohuli iā Rust e hoʻohana iā Carbon.
ʻO ka mea kūikawā, ʻo Carbon ka mea a Carruth i ʻōlelo ai he "ʻōlelo hope," i kūkulu ʻia ma luna o kahi kaiaola e noho nei, ma kēia ʻano C++.
No ia kumu, ua kūpono ʻo Carbon me ka code C ++ o kēia manawa, ʻoiai inā he nui nā pahuhopu me Rust, e like me ke kōkua ʻana i nā mea papahana i ka hana ʻana i "nā noi koʻikoʻi hana."
Eia kekahi, ua manaʻo ʻia e hana maʻalahi ka neʻe ʻana mai C ++ i Carbon.
Panina
ʻO ka hope, ua hoʻoikaika nā mea haku ʻōlelo Carbon e hoʻolohe i ke kaʻina hana. Loaʻa ka code o ka papahana no ke noi ʻana a mālama ʻia ma kahi ākea Github, a ua wehewehe ʻia kāna moʻomeheu i loko o nā kamaʻāina pilikino a me ka ʻāpana IT.
Ua manaʻo ka hui Carbon he papahana kūʻokoʻa i alakaʻi ʻia e ke kaiāulu a ʻaʻole ia he papahana i hoʻoulu ʻia e Google i mea e ulu ai i ka wā e hiki mai ana.
Ua hoʻohui ʻo Caruth, ʻoiai ʻo ka hoihoi mai kekahi mau ʻoihana IT, aia nō kēia manaʻo i ka pae hoʻokolohua.
Waiho i ka Reply