chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

谷歌宣布了一門新的編程語(yǔ)言Carbon

OpenCV學(xué)堂 ? 來(lái)源:量子位 ? 作者:量子位 ? 2022-08-02 11:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今年的CPP North C++大會(huì)上,谷歌宣布了一門新的編程語(yǔ)言Carbon,并稱其將是“C++的繼任者”。

谷歌將其在GitHub上開(kāi)源。雖然這個(gè)語(yǔ)言目前還處于實(shí)驗(yàn)階段,但還是很快吸了引眾多程序員前來(lái)圍觀,還一度登上了GitHub趨勢(shì)榜第一,現(xiàn)已收獲標(biāo)星21.3k。

f272973e-11a6-11ed-ba43-dac502259ad0.png

對(duì)于谷歌方開(kāi)發(fā)者稱Carbon是C++的繼承者一事,有國(guó)外媒體詢問(wèn)了C++之父Bjarne Stroustrup的看法,老爺子表示:

這些年總是有新的語(yǔ)言試圖成為C++的繼承者,我歡迎對(duì)編程語(yǔ)言和編程風(fēng)格進(jìn)行實(shí)驗(yàn);

但Carbon太新且規(guī)范不足,我無(wú)法真正做出有意義的技術(shù)評(píng)論。而通常在不開(kāi)發(fā)全新語(yǔ)言規(guī)則、庫(kù)和管理方案的情況下,很難提供C++的替代方案。

所以谷歌團(tuán)隊(duì)為什么非要搞一個(gè)C++“替代版”而不是繼續(xù)完善現(xiàn)有的C++?畢竟他們自己內(nèi)部都在廣泛使用這個(gè)語(yǔ)言。

為什么不去升級(jí)C++?

對(duì)此,帶領(lǐng)團(tuán)隊(duì)開(kāi)發(fā)Carbon的谷歌工程師錢德勒·卡魯斯(Chandler Carruth)解釋稱,C++至今已有40歲了,其自身的很多問(wèn)題困擾著現(xiàn)在的開(kāi)發(fā)人員。

數(shù)十年來(lái),C++已積累了許多技術(shù)負(fù)債。其維護(hù)者優(yōu)先考慮向后兼容,以便繼續(xù)支持廣泛使用的項(xiàng)目,但這樣容易導(dǎo)致代碼量巨大。

而且C++雖然有開(kāi)源的編譯器(如gcc),但也有不少閉源編譯器,其中的某些功能可能要過(guò)很久才能改善升級(jí)。

此外,C++語(yǔ)言的發(fā)展也受到了官僚委員會(huì)管理程序的阻礙,該程序以標(biāo)準(zhǔn)化而非設(shè)計(jì)為導(dǎo)向,這種做法導(dǎo)致很難給其添加新功能。

解決這些問(wèn)題的最佳方法是避免直接繼承C或C++的“遺產(chǎn)”,而是從語(yǔ)言基礎(chǔ)開(kāi)始,例如:現(xiàn)代泛型系統(tǒng)、模塊化代碼組織、一致的簡(jiǎn)單語(yǔ)法等。

卡魯斯也在CPP大會(huì)上提到,該語(yǔ)言并不是為了和C++未來(lái)改進(jìn)版本競(jìng)爭(zhēng),而是——

“探索用C++做不到的事”

正如微軟創(chuàng)建TypeScript來(lái)更新JavaScript那樣,Carbon作為一種在C++基礎(chǔ)上開(kāi)發(fā)的新語(yǔ)言,將為更多開(kāi)發(fā)者解決內(nèi)存安全和泛型等問(wèn)題,來(lái)彌補(bǔ)C++的不足。

目前Carbon語(yǔ)言的亮點(diǎn)包括:

Introducer關(guān)鍵字和簡(jiǎn)單語(yǔ)法;

函數(shù)輸入?yún)?shù)為只讀值;

指針提供間接訪問(wèn)和變體;

使用表達(dá)式命名類型;

通過(guò)包名導(dǎo)入APIs;

強(qiáng)大且經(jīng)過(guò)定義檢查的泛型

......

此外,谷歌正在繼續(xù)開(kāi)發(fā)Carbon以支持以下功能:

性能關(guān)鍵型軟件;

軟件和語(yǔ)言的演變;

易于閱讀、理解和編寫的代碼;

實(shí)用的安全和測(cè)試機(jī)制;

快速且可擴(kuò)展的開(kāi)發(fā);

現(xiàn)代操作系統(tǒng)平臺(tái)、硬件架構(gòu)和環(huán)境;

與現(xiàn)有C++代碼的互操作性和遷移性。

開(kāi)發(fā)團(tuán)隊(duì)還將創(chuàng)建一個(gè)內(nèi)置包管理器,這是C++中非常缺乏的。

舉個(gè)簡(jiǎn)單的例子:用C++代碼和Carbon代碼分別計(jì)算半徑為1和2的兩個(gè)圓面積之和。二者對(duì)比如圖:

f2c4d0ee-11a6-11ed-ba43-dac502259ad0.jpg

△圖源:GitHub;左為C++代碼,右為Carbon代碼

下圖展示了Carbon和C++互通性。程序員可以在Carbon上調(diào)用C++庫(kù)、方法和函數(shù),而不需要額外的開(kāi)銷,反之亦然。

f2d90e6a-11a6-11ed-ba43-dac502259ad0.png

不過(guò)至于安全問(wèn)題,Carbon并沒(méi)有一開(kāi)始就建立內(nèi)存安全系統(tǒng)。

卡魯斯介紹說(shuō),由于C++內(nèi)存安全性很差,所以Carbon的研發(fā)起點(diǎn)很低,該項(xiàng)目?jī)?yōu)先考慮的是遷移而不是安全;希望以后Carbon至少可以和Go或Swift一樣安全。

事實(shí)上,在Carbon之前,Mozilla(就是開(kāi)發(fā)火狐那個(gè))于2015年就發(fā)布了一個(gè)也標(biāo)榜自己為“C++繼承者”的語(yǔ)言:Rust,而且這個(gè)Rust很注重內(nèi)存安全性。

那為什么不大力發(fā)展Rust呢?

“Carbon是為有大量C++庫(kù)者準(zhǔn)備的”

卡魯斯在CPP會(huì)議上對(duì)此回應(yīng)稱,C++和Rust之間的銜接性不好,要將C++的生態(tài)系統(tǒng)轉(zhuǎn)移到Rust非常困難。

對(duì)于那些已經(jīng)擁有大量C++代碼庫(kù)的開(kāi)發(fā)者來(lái)說(shuō),要把自己之前的東西搬到Rust編輯器上就很麻煩了。

而Carbon被設(shè)計(jì)成一種C++的后繼語(yǔ)言,它以后將實(shí)現(xiàn)和C++無(wú)縫連接,并具備與C++的雙向互操作性,這對(duì)于有大量C++代碼庫(kù)者非常友好。

對(duì)于那些沒(méi)有這種“煩惱”的程序員們,卡魯斯表示,想用Rust的話就繼續(xù)用好了。

網(wǎng)友紛紛圍觀

前來(lái)圍觀Carbon的一眾網(wǎng)友中,有人表示支持谷歌開(kāi)發(fā)這個(gè)新語(yǔ)言:

若能在這里直接調(diào)用C語(yǔ)言庫(kù)的低層級(jí)Stuff函數(shù),而不需在開(kāi)頭加行extern “C”,是很了不起的。

f2f363c8-11a6-11ed-ba43-dac502259ad0.jpg

有人認(rèn)同其簡(jiǎn)化語(yǔ)言和提升安全性的目標(biāo),但他覺(jué)得要在現(xiàn)有的語(yǔ)言中改進(jìn)內(nèi)存安全并不太容易,現(xiàn)有的C++特征和API很可能會(huì)約束這個(gè)新語(yǔ)言的發(fā)展。

f306c684-11a6-11ed-ba43-dac502259ad0.jpg

當(dāng)然也有網(wǎng)友并不看好Carbon,認(rèn)為谷歌有棄用創(chuàng)新軟件的習(xí)慣,這個(gè)聽(tīng)起來(lái)很炸的項(xiàng)目可能會(huì)半途而廢。

f31c2f56-11a6-11ed-ba43-dac502259ad0.jpg

還有人提出:Carbon這個(gè)用C++實(shí)現(xiàn)的語(yǔ)言居然想要替代C++?

有網(wǎng)友覺(jué)得,現(xiàn)在Rust正在逐步成為低級(jí)程序語(yǔ)言,Carbon和Rust有不少相似之處,僅憑“讓C++遷移更容易”并沒(méi)有什么賣點(diǎn)。

f333389a-11a6-11ed-ba43-dac502259ad0.jpg

此外,Hacker News上還有網(wǎng)友想到了D語(yǔ)言(DLang),這個(gè)語(yǔ)言和C++的互通性很不錯(cuò)。而且D語(yǔ)言也有Carbon的不少功能,包括和C++相互調(diào)用、減少額外的開(kāi)銷等。

可惜由于D語(yǔ)言的初期定位不夠清晰,一度試圖涵蓋Java和C++的功能,導(dǎo)致它比較小眾。

f34a052a-11a6-11ed-ba43-dac502259ad0.jpg

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 谷歌
    +關(guān)注

    關(guān)注

    27

    文章

    6237

    瀏覽量

    109795
  • 編程語(yǔ)言
    +關(guān)注

    關(guān)注

    10

    文章

    1957

    瀏覽量

    38347
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2120

    瀏覽量

    76444

原文標(biāo)題:“C++繼任者”火到GitHub趨勢(shì)榜一,C++之父卻不認(rèn)可!

文章出處:【微信號(hào):CVSCHOOL,微信公眾號(hào):OpenCV學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    gitee 支持的編程語(yǔ)言有哪些

    Gitee(碼云)是個(gè)基于 Git 的代碼托管和研發(fā)協(xié)作平臺(tái),類似于 GitHub 和 GitLab。它支持多種編程語(yǔ)言,允許開(kāi)發(fā)者托管和管理代碼,進(jìn)行版本控制,以及協(xié)作開(kāi)發(fā)。以下是
    的頭像 發(fā)表于 01-06 09:50 ?953次閱讀

    Triton編譯器支持的編程語(yǔ)言

    Triton編譯器支持的編程語(yǔ)言主要包括以下幾種: 、主要編程語(yǔ)言 Python :Triton編譯器通過(guò)Python接口提供
    的頭像 發(fā)表于 12-24 17:33 ?1309次閱讀

    深入理解C語(yǔ)言:循環(huán)語(yǔ)句的應(yīng)用與優(yōu)化技巧

    在程序設(shè)計(jì)中,我們常常需要重復(fù)執(zhí)行某段代碼。為了提高效率和簡(jiǎn)化代碼,循環(huán)語(yǔ)句應(yīng)運(yùn)而生。C語(yǔ)言作為一門經(jīng)典的編程語(yǔ)言,提供
    的頭像 發(fā)表于 12-07 01:11 ?836次閱讀
    深入理解C<b class='flag-5'>語(yǔ)言</b>:循環(huán)語(yǔ)句的應(yīng)用與優(yōu)化技巧

    谷歌宣布項(xiàng)重要人事任命

    近日,谷歌云(Google Cloud)正式宣布項(xiàng)重要人事任命,尹世明將加入谷歌云,擔(dān)任大中華區(qū)總裁
    的頭像 發(fā)表于 11-18 15:07 ?762次閱讀

    如何選擇適合自己的編程語(yǔ)言

    在當(dāng)今這個(gè)技術(shù)日新月異的時(shí)代,編程語(yǔ)言的選擇對(duì)于軟件開(kāi)發(fā)者來(lái)說(shuō)至關(guān)重要。不同的編程語(yǔ)言有著不同的優(yōu)勢(shì)和適用場(chǎng)景,因此,選擇合適的編程
    的頭像 發(fā)表于 11-15 09:37 ?2311次閱讀

    編程語(yǔ)言的誤區(qū)與常見(jiàn)問(wèn)題

    誤區(qū)編程語(yǔ)言的選擇 常見(jiàn)問(wèn)題: 初學(xué)者在選擇編程語(yǔ)言時(shí),往往會(huì)被市場(chǎng)上的熱門語(yǔ)言所吸引,而忽
    的頭像 發(fā)表于 11-15 09:35 ?951次閱讀

    NPU支持的編程語(yǔ)言有哪些

    NPU(Neural Processing Unit)是種專門為深度學(xué)習(xí)和人工智能應(yīng)用設(shè)計(jì)的處理器。NPU支持的編程語(yǔ)言通常與它所集成的平臺(tái)或框架緊密相關(guān)。以下是些常見(jiàn)的
    的頭像 發(fā)表于 11-15 09:21 ?2369次閱讀

    C語(yǔ)言中的socket編程基礎(chǔ)

    Socket編程簡(jiǎn)介 Socket是種通信機(jī)制,允許程序之間進(jìn)行通信。在C語(yǔ)言中,socket編程是網(wǎng)絡(luò)編程的基礎(chǔ)。通過(guò)使用socket,
    的頭像 發(fā)表于 11-01 16:51 ?1676次閱讀

    單片機(jī)編程語(yǔ)言有哪些選擇

    些常用的單片機(jī)編程語(yǔ)言,以及它們的特點(diǎn)和應(yīng)用場(chǎng)景: 1. C語(yǔ)言 特點(diǎn) :C語(yǔ)言種通用的編程
    的頭像 發(fā)表于 11-01 14:13 ?3306次閱讀

    MCU編程語(yǔ)言和開(kāi)發(fā)環(huán)境介紹

    MCU編程語(yǔ)言 MCU編程語(yǔ)言是用于編寫MCU程序的高級(jí)編程語(yǔ)言,它們使得開(kāi)發(fā)者能夠更高效地開(kāi)
    的頭像 發(fā)表于 11-01 11:51 ?2698次閱讀

    C語(yǔ)言與其他編程語(yǔ)言的比較

    C語(yǔ)言作為種歷史悠久的編程語(yǔ)言,自其誕生以來(lái),直在軟件開(kāi)發(fā)領(lǐng)域扮演著重要角色。它以其高效、靈活和可移植性強(qiáng)的特點(diǎn),成為了系統(tǒng)級(jí)
    的頭像 發(fā)表于 10-29 17:30 ?1728次閱讀

    Orin芯片的編程語(yǔ)言支持

    Orin是款高度集成、高性能的車載計(jì)算平臺(tái),由英偉達(dá)推出,并采用了英偉達(dá)自家的Volta架構(gòu)GPU和其他高級(jí)處理器技術(shù)。關(guān)于Orin芯片的編程語(yǔ)言支持,可以從以下幾個(gè)方面進(jìn)行介紹:
    的頭像 發(fā)表于 10-27 16:45 ?1390次閱讀

    C++能不能讓編譯器自動(dòng)推導(dǎo)變量類型嗎

    隨著計(jì)算機(jī)性能的持續(xù)提升,編程語(yǔ)言似乎迎來(lái)了次大爆發(fā),各種編程語(yǔ)言不斷出現(xiàn),樂(lè)意折騰的人總能找到一門
    的頭像 發(fā)表于 10-24 17:22 ?2409次閱讀

    CNC系統(tǒng)般可用幾種編程語(yǔ)言

    。CNC系統(tǒng)廣泛應(yīng)用于機(jī)械制造、汽車制造、航空航天等領(lǐng)域。  CNC系統(tǒng)的編程語(yǔ)言是實(shí)現(xiàn)CNC系統(tǒng)控制功能的關(guān)鍵技術(shù)之。以下是對(duì)CNC系統(tǒng)可用編程
    的頭像 發(fā)表于 10-23 15:52 ?1931次閱讀

    plc編程語(yǔ)言編程相關(guān)技巧有哪些

    PLC(可編程邏輯控制器)編程語(yǔ)言及相關(guān)編程技巧是工業(yè)自動(dòng)化領(lǐng)域中不可或缺的知識(shí)。 、PLC編程
    的頭像 發(fā)表于 10-21 16:56 ?1444次閱讀