[心得] 2020-1-31 每日新聞
# 2020-1-31 每日新聞
# rust 1.41了!
除了一些功能更新
重要的是不再支援32-bit Apple產品了
# open-source security key
google 使用rust實作了 OpenSK
支援 FIDO U2F, FIDO2 兩種標準
# Rust編譯模型災難
文章作者Brian Anderson是Rust編程語言
及其姊妹項目Servo Web瀏覽器的共同創始人之一。
他現在在PingCAP擔任高級數據庫工程師。
他希望解決TiKV編譯緩慢的問題
在開發模式下進行完全重建可能需要15分鐘,在發布模式下可能需要30分鐘。
對於大型系統項目的開發人員來說,這聽起來可能並不那麼糟糕,
但是它比許多開發人員對現代編程環境所期望的要慢得多。
TiKV是一個相對較大的Rust代碼庫,
有200萬行程式碼。相比之下,Rust本身包含300萬行,而Servo則包含270萬行。
編程語言設計充滿了權衡利弊。這些基本選擇之一是runtime性能與編譯性能,
Rust團隊幾乎總是選擇runtime性能而不是編譯更快速。
如果快速編譯時間不是Rust設計的核心原則,那麼Rust的核心設計原則是什麼?這裡有一些:
實用性-它應該是一種可以在現實世界中使用的語言。
實用主義-它應該要讓人覺得可用,並且將其整合到之前的系統中。
內存安全性-它必須強制執行內存安全性,並且不能接受記憶體存取錯誤。
性能-它必須與C++在一樣快。
並發-它必須提供現代的解決方案來編寫並發代碼。
但這並不是說Rust設計師沒有在快速編譯時間中考慮任何因素。
但因為利弊的權衡,編譯器的性能還是愈來愈慢。
當作者每天使用Rust編譯器工作時,
電腦上至少擁有三份程式碼是很常見的,在其他所有版本都在構建和測試的同時。
我將開始在工作區1編寫程式,開始編譯,然後跳到工作區2,
開始在工作區2工作,編譯後再切換回工作區1。不斷進行在不同的工作區中切換。
雖然在2019年Rust的編譯速度有了提升,但目前Rust還是編譯的不夠快。
下一集會是作者如何優化Rust的編譯速度以達到產品經理的期待
# Bastion 0.34
什麼是Bastion?
Bastion是一個高度可用的容錯runtime系統,具有面向動態調度的輕量級流程模型。
它為輕量級過程實現提供了諸如並發之類的參與者模型,
並有效地利用了所有系統資源,並保證了每次傳送最多的消息。
基於消息的通信與actor model的Mesh網路。
runtime容錯能力使其成為分佈式系統的理想選擇。
具有NUMA感知和仿射緩存SMP執行程序的完全異步runtime。
監督系統使管理生命週期變得容易。
目前哪邊有用到Bastion?
SkyNet (Discord 機器人,用來重新發送已刪除的訊息)
在AWS Lambda中,我們使用Bastion啟用重試機制,並嘗試不同的解析策略來處理數據。
# Tide 0.6 了
Tide是一個還不成熟的 web framework
這一版增加了對CORS的支持與新的cookies API
也增加了一些新語法讓人用起來更簡單
# oreboot
oreboot是coreboot的分支
https://zh.wikipedia.org/wiki/Coreboot
來自維基百科的說明
coreboot,原名LinuxBIOS,是一個旨在取代大多數電腦中專有韌體(BIOS或UEFI)的軟體專案,它採用輕量級韌體設計,只執行載入和執行現代32位元或64位元作業系統所需的最少量任務。
Oreboot當前僅支援LinuxBoot。
Oreboot想利用Rust的安全性製作一個安全穩定快速的BIOS程式。
# 改善MSBuild中的並行編譯性能
從Visual Studio 2019 16.3開始,有了Multi-ToolTask(MTT)
通過將MSBuild屬性或環境變量UseMultiToolTask設置為true,使用 MTT。
可以使用平行編譯。
# Bitsery C++序列化庫 5.03版了
速度很快
序列化的數據很小
可以向前向後相容
# 什麼是Spring Framework? 從依賴注入到Web MVC
花費約15分鐘閱讀本指南,該指南涵蓋了Spring框架中最重要的80%,
如果您的工作有用到Spring 您將在未來獲得超過一百萬次回報。
# Project Loom 的出現會讓 Future 消失嗎?
Project Loom 的出現會讓 Future 跟 CompletableFuture 過氣嗎?
Project Loom具有三個主要目標:
introducing continuations, fibers, and tail-call elimination.
Loom能讓你更簡單的寫出非同步程式碼並使用 fibers。
Kotlin已經有fibers,編譯器支持。 Scala庫具有coroutines。它們與即將推出的JVM
fibers相同嗎?
並沒有因為JVM fibers是底層實現的,並且具有運行時支持。
另一方面,Kotlin中的fibers是一種編譯時機制。在Scala中,coroutines是一種程式庫實作機制。
--
標題 [閒聊] 寫程式的時候要吃甜食
推 del680202:我寫程式的時候 都想脫光衣服
推 lgzenith:雙腳放到桌上反而容易進入狀況
→ loveme00835:看吉澤明步...
#1Hc6x55S (Soft_Job)
--
推簽名檔
欸幹喜歡看venu是不是有病
樓上你一定要噓文嗎? 不懂欸 你噓了讓我高潮怎辦?????
推
推
推推 支持分享的心得文
推
當我研究所剛畢業時JAVA證照很夯JAVA職缺很多...!
54
[情報] Win11革命性新變化來了! 31年的NTFS被Win11革命性新變化來了! 31年的NTFS被取代:ReFS將成默認文件系統 微軟副總裁透露,正基於Rust對Win11內核進行重寫,部分取代之前的C++編程語言。 看起來這只是Win11改造計劃的其中一項重要內容,還有一個大的變化是,ReFS正加速取 代NTFS成為默認文件系統。 早在今年的Win11 Build 25276中,就帶來了對ReFS文件系統的支持,因為當時微軟下發56
Re: [閒聊] 寫程式真的這麼邪門嗎?: 初五開工 這邊用C++給大家玩一個小遊戲 一個hello world等級的小程式 #include<iostream>34
[討論] Java持續失寵排名被C++超越首度落至第4名Java持續失寵,12月TIOBE Index排名被C++超越首度落至第4名 TIOBE Index 12月程式語言受歡迎排名,Java被C++超越首次落到第4名,而這也是C++自 2003年以來,再度有望成為年度語言 文/李建興 | 2022-12-07發表 程式語言排名TIOBE Index在2022年末,公布12月最受歡迎的程式語言排名,前三名分別25
[討論] 看過最浮誇的書名是什麼?最近在學rust 看到一本書 書名叫 《我 Rust 我驕傲:生來高人一等的快速優雅語言》 差點沒從椅子上跌下來 作者張漢東先生 在中國版的出版名是 《Rust編程之道》 對台灣版命名亦頗有微詞 ( )12
[問卦] 有沒有kotlin 除了寫app還能用來做什麼如題 kotlin 除了寫app還能用來做什麼? 大家現在比較看好發展的語言除了 c家族 golang rust 等等的以外 好像沒人特別提到kotlin9
Re: [問卦] 如何30天內精通C++啊?急在線等!安安 我是剛回完mail 聽完音樂 發完一篇音樂廢文 準備睡覺的肥宅 剛好email討論的東西2
[問卦] LLVM是編譯器革命性的創新嗎?肥肥我剛剛在玩LLVM啦 前端可以用Clang編譯C語言 用Rustc編譯rust clang與rustc都會產生LLVM-IR 給中間的LLVM opt作最佳化1
Re: [問卦] 為什麼Rust獲選最受喜愛語言七年?RUST,這裡是機掰客家人的啦。 ※ 引述 《thelittleone (風真いろは大好き♡♥)》 之銘言: : : 女口是頁 :