「演講」平臺價值觀、Rust以及對系統軟體的啟示
這是Bryan Cantrill(雲計算平臺joyent的CTO )在最近某次Scala大會上的分享。
更多內容請參看 Slides
選擇一門編程語言,一個平臺,一個操作系統,是一個重大且最重要的決定,具有持久的影響。因為你不僅僅是選擇一個工具,更多的是選擇它所代表的意義。
比如,
C的平臺價值觀:
- Interoperability「互操性」
- Performance「性能」
- Portability「可移植性」
- Simplicity「簡單性」
C++的平臺價值觀:
- Expressiveness 「表達能力」
- Performance 「性能」
- Portability 「可移植性」
Scala的平臺價值觀:
- Composability「可組合性」
- Expressiveness「表達能力」
- Interoperability「互操性」
- Integrity「完整性」
- Robustness「健壯性」
近十年來,系統軟體編程語言所擁有的價值觀和軟體本身必須保持的價值觀之間存在巨大差異。現在的系統軟體已經能夠提供相對安全和可靠的系統,但這一切是因為編程語言嗎?不是!我們是否可以做的更好?
來看看Rust吧!
Rust的平臺價值觀:
- Composability 「可組合性」
- Expressiveness 「表達能力」
- Extensibility 「可擴展性」
- Interoperability 「互操性」
- Integrity 「完整性」
- Performance 「性能」
- Rigor 「嚴謹性」
- Robustness 「健壯性」
- Safety 「安全性」
- Security 「安全保障」
在此演講中,作者還提供了三種使用Rust進行混合系統開發的方法:
- Rust子系統。不要用Rust重寫舊系統,Rust適合新的開發。這方面在FreeBSD裏有一個示例應用。
- Rust組件系統。傳統的系統軟體應用很廣,而且都以組件方式發布,這裡面有很多組件有問題,這正是Rust的應用之地。
- Rust固件。操作系統之下,硬體之上的固件。可能更適合Rust。
Rust告訴我們:我們可以擁有更美好的東西。
推薦閱讀: