程式語言演進譜系
B 語言
- 開發者:Ken Thompson (貝爾實驗室)
- 時間:1969-1970 年
- 基於:BCPL (Basic Combined Programming Language)
- 特點:無類型系統,唯一數據類型是機器字 (word),所有值統一按字長處理
- 用途:編寫早期 UNIX 系統原型
- 缺陷:無法表達不同數據類型 (字符、整數、浮點、指針區別),導致代碼易錯、移植困難
C 語言誕生
- 開發者:Dennis Ritchie (貝爾實驗室)
- 時間:1971-1973 年
- 動機:解決 B 語言無類型問題,為 UNIX 重寫提供更強大工具
- 創新:引入類型系統 (char, int, float, double, 指針, 陣列, 結構體)
- 1973 年 UNIX 核心用 C 重寫,奠定 C 系統級語言地位
演進鏈條
BCPL (1967, Martin Richards)
↓ 簡化、去類型
B (1969, Ken Thompson)
↓ 增加類型系統、結構體、指針運算、標準庫
C (1972, Dennis Ritchie)
↓ 面向對象、泛型、RAII、標準庫擴展
C++ (1983, Bjarne Stroustrup)
↓ 虛擬機、垃圾回收、純物件導向
Java / C# (1990s)
歷史地位
B 語言已完全被淘汰,僅具歷史研究價值。C 語言繼承了 B 的簡潔語法風格,但本質上是全新設計的類型化系統語言。