日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > Google拋棄C語言,采用Go語言重寫Go編譯器

Google拋棄C語言,采用Go語言重寫Go編譯器

來源:程序員人生   發布時間:2014-09-04 04:16:07 閱讀次數:2590次

Go語言是Google開發的新型編程語言,將動態語言易于編寫的特性和靜態語言的高效性相結合,具備良好的易用性和極佳的執行效率。目前該語言已經發布了1.2正式版本。

Go語言開發者Russ Cox近日透露,Go 1.3版本之后,該語言的編譯器將會使用Go語言重寫。


目前的Go編譯器

目前Go編譯器gc基于C語言,是從Plan 9的C編譯器衍生出來的,其中保持了原有的匯編程序、C編譯器和鏈接器,而部分針對Go的編譯器(gc/6g/8g/5g)使用C語言進行了重寫。

為何要采用Go語言實現

Russ Cox指出,采用Go語言來實現編譯器相比C語言的優勢在于:

  • 編寫正確的Go代碼要比編寫正確的C代碼容易
  • 調試不正確的Go代碼要比調試不正確的C代碼容易
  • Go編譯器必然需要對Go有個很好的了解,而使用C語言實現則增加了一個不必要的二次需求
  • 與C相比,Go語言對并行程序執行得更好
  • 對于模塊化、自動重寫、單元測試以及分析,Go比C有更好的標準支持
  • 使用Go比使用C更加有趣

計劃

Russ Cox表示,將編譯器從C實現轉變為Go實現的過程,主要是通過自動翻譯程序來進行。這一過程將分階段進行:

  • 1階段:開發和調試翻譯程序。
  • 2階段:使用翻譯程序將編譯器從C轉換成Go,并刪除部分C語言副本。該階段可能會在Go 1.3版本中實現,可能仍會需要一些C代碼。
  • 3階段:使用一些工具將編譯器分割成包,并清理部分代碼、添加文檔、添加集成測試等。這個階段將在Go 1.4中實現,會將編譯器徹底轉換成為一個Go程序。
  • 4階段:通過標準的分析和測量技術對編譯器的內存和CPU占用率進行優化,可能會引入并行處理。該階段將在Go 1.4中實現,部分特性可能會在Go 1.5中實現。
  • 5階段:使用最新版本的Go解析器和類型替換編譯器前端。

舍棄的方案

對于為何不從頭編寫一個新的編譯器,Russ Cox表示,從頭編寫是一個愚蠢的行為,這意味著要拋棄之前很多人很多年以來的工作成果。

Go語言開發團隊還嘗試了手動將C代碼翻譯為Go代碼,但是在翻譯了幾個小型的C/C++程序之后,他們發現這種方式比較繁瑣,且容易出錯,而且錯誤都非常隱蔽,不易發現。因此,他們決定首先開發出一個自動編譯器,通過這種方式,出現的錯誤將會是一致的,容易查找。(編譯:王果)

詳細信息:Go 1.3+ Compiler Overhaul

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 99国产精品久久久久久久久久 | 国产精品色综合一区二区三区 | 久久九九免费 | 中文字幕精品一区久久久久 | 69视频免费 | 日韩3区| 国产免费一区 | 国内精品国产成人国产三级粉色 | 精品999在线 | 在线看黄色av | 欧美一级片在线观看 | 国产一区二区三区四区hd | 日韩精品一区二区三区在线播放 | 99热国产在线 | 噜噜社 | 少妇一级淫片免费看 | 毛片特黄| 亚洲经典一区 | 久久九九 | 免费黄色欧美 | 亚洲毛片视频 | 亚洲 欧美 日韩在线 | 精品av久久久久电影 | 在线视频国产一区 | 福利在线看 | 黄色av电影在线观看 | 欧美一区国产 | 中文字幕1区2区3区 三级电影网址 | 一区二区在线视频 | 丁香婷婷综合激情五月色 | 严国精品国产三级国产 | 久久av一区二区三区 | 国产精品免费一区二区三区都可以 | 欧美精品一区二区三区蜜桃视频 | 日本乱偷中文字幕 | 久久久久久久一区 | 91麻豆国产福利精品 | 亚洲精品第一页 | 精品无套 | 不卡在线| 在线精品亚洲欧美日韩国产 |