Google發表欲繼承C++的程式語言Carbon
歷來不斷有新程式語言革新或試圖取代舊語言,像是Kotlin之於Java,或蘋果的Swift之於Objective-C,以及微軟的TypeScript之於Javascript。,自詡將成為C++的繼承者。
Google核心程式語言部門技術主管並宣布開源Carbon,並稱Carbon是C++的「實驗中的繼承者(experimental successor)」。他同時也是LLVM及Clang語言的貢獻者。
Carruth表示,雖然C++是開發重視效能應用的主流語言,但是它已發展50年,累積的技術債使其創新變得極端困難。一個方法是移轉到其他語言,如Kotlin、Swift、Go或是Mozilla開發的Rust。但Google希望提出另一個版本。
Google表示,這些語言和C++之間並不具備類似Java和Kotlin之間的「雙向相容性(bi-directional interoperability)」,因此將C++專案搬移需要一些變更,而且也會有效能降低的問題。
Carruth強調Carbon和C++之間具備雙向相容,不但大規模使用或現有C++程式碼搬移順暢,對C++開發人員而言也容易上手學習。對企業或開發人員而言,將可沿用既有投資、程式碼,以及開發人員社群。
強調Carbon的設計目標是支援重視效能的應用開發、程式碼簡單易讀、易懂、易寫、支援安全及測試工具、適合快速和大規模開發,也支援現代化OS、硬體架構及環境,最重要的是和C++程式碼相容。Google宣稱雖然許多語言也都滿足部分目標,但Carbon特色是做到全部。
Google預計今年內完成Carbon的0.1版,2023年進入0.2版,而在2024或2025年推出1.0版。
登場時期 1983年 (39年前)
C++(シープラスプラス)は、汎用プログラミング言語のひとつである。派生元であるC言語の機能や特徴を継承しつつ、表現力と効率性の向上のために、手続き型プログラミング・データ抽象・オブジェクト指向プログラミング・ジェネリックプログラミングといった複数のプログラミングパラダイムが組み合わされている。C言語のようにハードウェアを直接扱うような下位層向けの低水準言語としても、複雑なアプリケーションソフトウェアを開発するための上位層向け高水準言語としても使用可能である。アセンブリ言語以外の低水準言語を必要としないこと、使わない機能に時間的・空間的コストを必要としないことが、言語設計の重要な原則となっている。
C++は、1983年にAT&Tベル研究所の計算機科学者ビャーネ・ストロヴストルップによって公開された。また様々なプラットフォームでその開発環境が導入された。1998年からISOとIECの共同で言語仕様とテンプレートライブラリの標準化が行われるようになり、その後2003年、2011年、2014年、2017年、2020年に標準規格が改訂されている。2021年時点での最新規格は「ISO/IEC 14882:2020」通称「C++20」である。
