go語(yǔ)言的編譯器是用什么語(yǔ)言寫(xiě)的?相信大部分人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,話(huà)不多說(shuō),一起往下看吧。
創(chuàng)新互聯(lián),專(zhuān)注為中小企業(yè)提供官網(wǎng)建設(shè)、營(yíng)銷(xiāo)型網(wǎng)站制作、響應(yīng)式網(wǎng)站、展示型成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)等服務(wù),幫助中小企業(yè)通過(guò)網(wǎng)站體現(xiàn)價(jià)值、有效益。幫助企業(yè)快速建站、解決網(wǎng)站建設(shè)與網(wǎng)站營(yíng)銷(xiāo)推廣問(wèn)題。看起來(lái)像是個(gè)“雞生蛋,蛋生雞”的問(wèn)題,實(shí)際上不是的。
這個(gè)問(wèn)題的關(guān)鍵在于理解,編譯器本身就是一個(gè)程序,它的功能就是把源代碼翻譯為計(jì)算機(jī)可執(zhí)行的程序。
對(duì)于 C/C++、Go、Rust 這樣的本地語(yǔ)言,它們編譯生成后的目標(biāo)程序就是目標(biāo)平臺(tái)的本地可執(zhí)行程序。比如你用這三種語(yǔ)言寫(xiě)個(gè) Hello World,在 Windows 平臺(tái)下用編譯的結(jié)果一定是一個(gè) .exe 文件,這些 .exe 文件里面沒(méi)有包含任何源語(yǔ)言的信息。
Windows 運(yùn)行它們的時(shí)候不知道,也不需要知道這些 .exe 文件編譯之前是用什么語(yǔ)言寫(xiě)的,只需要把它們加載進(jìn)內(nèi)存,一句一句地執(zhí)行指令就行了。
編譯器程序也是這個(gè)道理。
假如你發(fā)明了一種新的語(yǔ)言 CNifeLang,首先需要用一種現(xiàn)有的語(yǔ)言寫(xiě)一個(gè) CNifeLang 的編譯器,比如說(shuō)就用 Golang 吧;
你用 Golang 寫(xiě)了一個(gè) CNifeLang 的編譯器,能成功地把任何合法的 CNifeLang 源代碼編譯為等價(jià)的目標(biāo)程序。
接著用 CNifeLang 寫(xiě)一個(gè)程序,它與你用 Golang 寫(xiě)的編譯器功能完全相同,用 Golang 實(shí)現(xiàn)的編譯器把這個(gè)程序編譯完成,你就得到了一個(gè)用 CNifeLang 實(shí)現(xiàn)的 CNifeLang 編譯器。
因?yàn)檫@個(gè)程序的功能與用 Golang 寫(xiě)的編譯器完全相同,所以你完全可以用這個(gè)編譯器去編譯 CNifeLang,于是 CNifeLang 實(shí)現(xiàn)了 自舉。
如果題主學(xué)習(xí)了編譯原理這門(mén)課,就會(huì)發(fā)現(xiàn)編譯與編程語(yǔ)言是沒(méi)有關(guān)系的,它有一套完整而成熟的操作方法,你完全可以用任何一種圖靈完備的語(yǔ)言去寫(xiě)任何一種形式語(yǔ)言的編譯器,而且有嚴(yán)格的數(shù)學(xué)方法證明你寫(xiě)的編譯器是正確的。
我們常見(jiàn)的編程語(yǔ)言基本都實(shí)現(xiàn)了自舉,這是一種編程語(yǔ)言發(fā)展成熟的標(biāo)志之一。因?yàn)榫幾g器既是一個(gè)復(fù)雜的工程,也有一套成熟的評(píng)價(jià)體系,能寫(xiě)出成熟可用、效率有保證的本語(yǔ)言編譯器,就能說(shuō)明這種語(yǔ)言已經(jīng)能拿來(lái)用了。
以上就是go語(yǔ)言的編譯器的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。