Re: [討論] Rust 2024 發佈正式版
※ 引述《Rust (lang)》之銘言:
: https://blog.rust-lang.org/2025/02/20/Rust-1.85.0.html
: 知道Rust這個程式語言也超過十年了,
: 自從1.0穩定版推出之後,
: 就以每三年一個大版本的方式演進,
: 今年則是輪到了Rust 2024
: (對,因為延遲了一段時間到2025才發佈)。
: 不過我看了一下看起來是這次最大的改動RPIT,
: 然後根本不知道在寫什麼OTZ,
: 只能說Rust的複雜性越來越高了......
: 啊對了Future也進Prelude了~
好像蠻多人想問為什麼rust要存在XD
簡單說可以看看kotlin kotlin使用了JVM 換言之就是復用已經發展成熟的語言後端
rust復用的是成熟的LLVM IR後端 前端C++已經發展到亂七八糟的 早就該重新設計
就如同kotlin是一個現代前端 rust也是現代前端
推文有人說C C也是古老不良設計的語言 比如file系參數順位並不統一
--
至於問我喜歡哪個語言喔 我不會rust 我只會c++23
--
無所謂設計良不良 能完成任務的就是好工具
會現代C/C++的都是狠人
現代世界還是要有現代工具
希望 C (簡陋)、C++ (複雜) 能盡快被取代
要取代C/C++,不是不可能,但我們到死應該都看不到
可以分享,簡單,複雜,亂七八糟的定義嗎?如果是 人造成
的因素,別牽拖給程式語言吧。Rust也可以寫出亂七八糟阿!
該給的不給 stackoverflow有整理c++十幾篇enum to string 吵了這麼多年就是不內建 不該給的功能倒是一堆 三元<=>這種擺明是編譯器後端優化的東西拉到前端語法幹嘛 這片搞笑的可以表達我的心情XD
https://youtu.be/HD9vrY6FKgI
還有C++哲學本身不自洽 當初是為了兼容C 所以很多語法被綁住 以前也向下相容 從C++17開始大量deprecate 不再向下做相容 卻不重新規劃老舊設計 擠牙膏問題 lambda哪版開始可以auto 哪版可以constexpr 哪版可以template 哪版可以mutable static_assert noexcept.... 擠牙膏擠成這樣就是沒有規劃的證明 卻又堅持三年一版 不一次設計到位變成帶著大量歷史遺毒 又想要東施效顰現代語言 反觀其他定位的語言基本上因為depreacte舊版 新專案往往使用新版 C++是偏向系統level而不是前端 但現在這種破壞式擠牙膏根本就沒辦法用 搞到這樣 實務上現在就還是C++11/14最廣 根本就沒多少人在上20/23
https://i.imgur.com/H2UzsMH.pngsince C++17 deprecated in C++20 可以再智障一點

現有的c/c++專案鐵定不會換語言 一般人也不會整天寫c/c++
都是特定行業比較多XD
如果現代就是臃腫就是桎梏 我覺得這不夠現代
輕量跨平台 編譯以及運行都足夠快才是人用的東西
手稿語言直譯語言不用編譯 js py長年霸榜了
現代是速食文化
工具就是工具而不是人 便捷好用才好
想取代c喔? 不知道該從哪吐槽
go表示:我是c的繼任者
那有什麼完美無缺的語言,一切都是trade off
所以一個語言高度自洽比功能多還重要
rust 抽象是很好 但套件包真的好肥
交給 analyzer 檢查又很吃資源
確實目前沒有完美的語言 可以先放棄一些次要的東西
開發人員開發快捷是主要的就是
升級CPU萬用解
怎麼可能沒有不良設計?不是優缺並存就代表設計沒問
題耶,大腦要進化可都是萬年為單位的,只要大腦還有
限制語法設計必然有好壞。為什麼現代語言都有明顯的
設計趨勢,就是因為前人已經試錯告訴你那些設計容易
導致開發上帶來問題,如果舊有設計沒有不良,為何新
興語言要改變?
新興語言多玩玩可以看到對取捨的哲學
趨勢是各種防呆 盡量在編譯階段抓出問題
說得好 連js都轉ts想在編譯時間提早處理
參數順位不統一那個要去罵 POSIX 標準吧
這樣說也沒錯 總之古早很多東西都是設計不良 才有各種現在重新設計
那種會變來變去的語言都是垃圾
什麼時候看到C 在改版
c89/c99/c11/c17/c23都在改啊,只是沒引進大feature,
最大的改動就是memory model
又到了我最喜歡的戰語言環節
戰 都戰 所有語言都進來 php一定不會缺席的對吧
go光vector效能就差不少吧
看語言不能只單看一個功能 而是要回到該語言的哲學整體討論 go的應用場景是高併發 高併發的情境下 C/C++ thread比goroutine肥 還有高頻解構下 go runtime會排程 Go效能已經是半個OS語言 容器家族docker compose2 podman k8s k3s k9s helm全是go
倒也不是真的要升級cpu 多數應用夠用就好 機制搞好哪
種語言多半不會差太大的
至於js和py就是臃腫化了 專案也刻意複雜化了
那就不自洽了 你前面說"現代是速食文化" "便捷好用才好" 最便捷語言環境就是瀏覽器打開F12就可以寫js 沒有比這更速食的了 你不用vue react這些東西寫SPA 難不成你要用html,css尻? 這樣叫速食? py臃腫難不成你寫AI不用huggingface 要學deepseek回去用PTX 這哪裡速食? 現在面試leetcode 選py比例極高 因為通常先寫pseudo code跟考官討論 同意之後才轉真實code py幾乎是pseudo code寫完 八成不用動 改個兩成就能跑了
能手持設備掌中乾坤更好一點
如果要embed輕量 那就是shell script 樹莓派裝個linux就可以開始玩
C語言是有一些設計不良打死不改啦 像是結合律|&
但做壞事的能力是一等一的 我們永遠需要這個自由的語言
至於C++就算了 功能多到爆炸誰搞得懂他
請問 結合律|& 是指什麼?
運算符 &&和&行為並不相同 一個是會提早終止 一個會全部執行
這篇蠻有意思的,C++的使用者分兩派,對語言的需求完全
不一樣,很難兼顧
Chandler當初看他秀clang-tidy覺得炫泡 不過現在回想 就是因為C++太多不良設計了 套一句圍棋概念 為什麼會有手筋的存在 就是前面有人下錯 不然你看AI自戰哪常用手筋 都是佔地大的位置 是人類下錯AI才用手筋
是說C++20開始我就沒在跟了 加太多新東西跟不上
不知道module的支援度如何
這東西除非C++真的有像是其他語言的官方包管理工具 不然永遠是殘缺的體驗
人無法預測未來,3/5年內認為是好設計,放大到30年就
變壞設計了,就像array cast to pointer,現在要修就
困難了
& 跟 && 為甚麼行為要一樣?
設計上有一個很重要的概念是"pit of success" 設計是要幫助使用者不小心用對 而不是提心吊膽的還會做錯
手筋還定石 定石的由來跟日本的圍棋競爭史有關 很有趣
定石是照棋型正常走的棋步 手筋是扭轉局部戰況的妙手 妙手可以存在是因為有人下錯 不在棋型上 導致棋型不好
c++ 功能特性很多但你也沒必要全都懂吧,懂會用到的就
功能多跟設計不良無關 功能多但每個都半殘品更凸顯無節操 前面已經舉過很多例子了 比如lambda擠牙膏
好了,另外拿 coroutine 比 thread 兩個起跑線又不一樣
,怎麼不拿c/c++ 的 coroutine 來比
因為C++ coroutine很難寫 維護難度跟c++thread/goroutine不在同一個等級上 C++ coroutine現在主要應用在高頻交易 算是蠻特化的場景 不然系統設計主導的後端常見要嘛node要嘛go
我是針對go是c++後繼者這點回覆。你光看到right referen
我說go是C後繼者 rust才是我這篇中c++後繼者 再次強調 C和C++是不同的語言
ce就知道這邊的使用者為了避免多餘的copy願意付多少effo
現在主流語言就C++有r ref 其他語言不在意一般copy成本阿 頂多要注意deepcopy
rt,然後golang基本data structure慢個30-40%…重度使用
thread的場景還是會用golang啦,但其他場景做不到。你看
llama.cpp也不是用golang寫呀
llama.cpp是產品級的東西嗎? 你拿llama.cpp來跟整個容器家族比應用?
※ 編輯: PosetMage (126.72.89.102 日本), 02/24/2025 09:42:25說c的後繼者就更好笑了,比vector慢難道能比c array快?
你firmware能用golang寫,instruction memory不用錢?
所以現在的SaaS公司全部是智障 使用aws azure gcp都是k8s+容器化 大家都是腦殘
非產品級就不管喔?其他應用不是應用?你公司裡產品跟非
產品的project比例是1:0?
喔是喔 照你邏輯 那大部分的軟體都不是C寫的 所以C是垃圾
※ 編輯: PosetMage (60.152.174.174 日本), 02/24/2025 09:58:14go 不拿掉 gc 就下去吧,看 discord 為什換 go 改 rust
又來一個 大部分軟體不是rust寫的 rust
※ 編輯: PosetMage (60.152.174.174 日本), 02/24/2025 10:21:18我可沒有說SaaS那些有的沒的應該改用C。但如果你說xxx是
ooo的後繼者,那xxx應該要繼承ooo的優點吧?不然花一堆
時間轉過去效能變慢怎麼跟客戶交代?還是firmware太髒了
不算softjob?
大家不用C不然要用什麼你說阿 rust? 好喔 rust最強
我說 go 因為 gc 被 discord 換掉也沒說錯啊.
go 到現在不給 bypass gc 就只能擔當中高等級負載
rust最強+1
※ 編輯: PosetMage (60.152.174.174 日本), 02/24/2025 10:33:32再說你說那些從一開始就不會用c/c++寫吧,干後繼者屁事
拿llama.cpp來說AI不會用go寫 現在又說很多東西不該用C++寫 邏輯加油
※ 編輯: PosetMage (60.152.174.174 日本), 02/24/2025 10:38:30我是說在意效能到一定程度的話會傾向用c++寫…
llama.cpp是因為他要用cpu跑model,所以用go會慢個30%不
能接受,這樣有聽懂我的意思了嗎??
所以阿 雲端不用在意效能? container作為所有雲端基礎不用在意效能? 整個雲端技術都很有錢 大家用go浪費資源很爽?
※ 編輯: PosetMage (60.152.174.174 日本), 02/24/2025 10:42:46雖然我想法跟原PO不同,但非常鼓勵這種有自己主見觀點的人
。
怎麼縮了 前面不是很兇說是個人問題不要牽拖語言?
是啊 人力比較貴啊,c++爛語言浪費人力
笑死 說資源很重要的是你 說go浪費資源的也是你 結果講不出為什麼雲端都是go 只會說C++爛語言浪費人力 舉例C++還只能拿llama.cpp 起碼也說個高頻交易現在都是C++ 主流遊戲引擎unity/unreal/godot原始碼都是C++
呃 golang的slice會做邊界檢查,就像c++的vector::at比s
ubscript慢一樣。golang哲學上不希望花時間debug這種垃
圾。我也知道高頻用c++,找工作的時候會看到,不過想說
舉個我確定會用到大量vector的例子。原本是想好好討論的
用單一語法缺點打死一個語言 這樣叫想好好討論? 好喔
,當你說得對吧@@
要戰了嗎?本來還不想戰你這個假外行。你一定沒參與過任何
國際組織,而且是技術很多人使用的國際組織,歷史包袱本來
就該變來變去的。今天的設計正確,本來就不適用10年後。10
年後再改啊。就你這個菜鳥才會認為程式語言有最佳最棒的架
構或語法設計,真的有夠菜鳥的想法。
10年後再改沒問題啊 現在是一堆語言一年一小改三年一大改喔
※ 編輯: PosetMage (124.212.251.101 日本), 02/24/2025 11:13:49Rust也是常常改版啊,有夠爛,一直改,跟C++一樣爛。
隨著時間越長Rust改越多,有夠爛!
語言本來有自己一套哲學 照哲學更新沒問題 打破自己哲學 那就是問題
※ 編輯: PosetMage (124.212.251.101 日本), 02/24/2025 11:15:22使用人數,程式語言排行榜,都證明Rust設計失敗,沒人想要
用了。呵呵。
設計得再好,沒人用?根本就是笑死人。
所以阿 語言扯甚麼哲學 能動就好 寫asm也可以 設計語言幹嘛
※ 編輯: PosetMage (124.212.251.101 日本), 02/24/2025 11:17:43成功的程式語言就是,有人用,有人賺到錢,商業成功。Rust
設計成沒人想用,商業價值低,真的設計得得蠻失敗的。
是阿 各種語言設計的都是浪費時間浪費力氣 大家通通回去寫組合語言價值最高
※ 編輯: PosetMage (124.212.251.101 日本), 02/24/2025 11:18:31誰不知道科學與哲學的重要。程式語言不能讓更多人使用,不
能讓更多人賺錢,有什麼意義。這就是Rust失敗的地方。Rust
慘慘慘。
很棒 這個就是你參戰的水準 跨國組織的高度
※ 編輯: PosetMage (124.212.251.101 日本), 02/24/2025 11:21:53再怎麼吹Rust,都改變不了,少人用的慘況啦。設計哲學,設
計成沒人用,還敢一直吹耶!
還好我不會rust我只會有商業價值的C++
※ 編輯: PosetMage (124.212.251.101 日本), 02/24/2025 11:23:48vector的優化怎麼能算特例… 你任何壓縮演算法,加解密
,圖像算法,AI模型,大部分的data structure,哪個perf
ormace不是dominated by vector。不確定為什麼你一直覺
得vector不重要。那hash map重要嗎?他底下的data用什麼
存?
我是指js和py的可速食程度變低了 除非捨棄掉現有生態
改用迷你的解釋器 全部自己來 現在的你不整個開發工
具很難隨寫隨跑 瀏覽器更是重型應用開發上還是桌面
端為主
要的就是小工具可以讓我靈光一閃隨寫上去隨用
Java出來時,捅C++ 幾下。C# 出來時,捅Java 幾下。
Go出來,也捅C++ Java幾下。現在Rust 出來,C++也被捅
看來C++ 衰小呢。
好奇問一下,你們 HFT 是不是一堆low latency的專家
看redox 之後會怎麼樣吧
25
首Po知道Rust這個程式語言也超過十年了, 自從1.0穩定版推出之後, 就以每三年一個大版本的方式演進, 今年則是輪到了Rust 2024![[討論] Rust 2024 發佈正式版 [討論] Rust 2024 發佈正式版](https://www.rust-lang.org/static/images/rust-social-wide.jpg)
26
開戰了 說Go是C繼任者真的是很難接受欸 一堆地方不好用Go寫吧 k8s/docker並不是真的效能很吃緊而是需要併發度夠高又稍微方便的語言 但很多地方Go的效能都不夠吧20
有一個笑話 "我有一個bug 我切了一個thread 現在 我有兩個bug" 這就是C/C++在現實的比喻 有問題的語言卻大力擴張 結果就是讓不安全軟體到處都是 美國國安發布Product Security Bad Practices 表明使用不安全語言c/c++是國安問題 (推薦看原子能這部 ) C++的處境可以說前有埋伏後有追兵![Re: [討論] Rust 2024 發佈正式版 Re: [討論] Rust 2024 發佈正式版](https://img.youtube.com/vi/t0BRy1NNG9g/mqdefault.jpg)
12
[問卦] 有沒有kotlin 除了寫app還能用來做什麼如題 kotlin 除了寫app還能用來做什麼? 大家現在比較看好發展的語言除了 c家族 golang rust 等等的以外 好像沒人特別提到kotlin11
[問卦] 工程師應該精通幾種程式語言?如題 程式語言這麼多種 基本的 Java C++ 算會用的3
[心得] 2020-1-31 每日新聞# 2020-1-31 每日新聞 # rust 1.41了! 除了一些功能更新 重要的是不再支援32-bit Apple產品了![[心得] 2020-1-31 每日新聞 [心得] 2020-1-31 每日新聞](https://www.rust-lang.org/static/images/rust-social-wide.jpg)
4
[問卦] 台灣還有人在做加密貨幣區塊鏈?剛剛看rust語言可以在台灣找什麼工作 查一下104 竟然有61個相關詞目 rust在其中只是帶過---希望精通 的語言之一 但是這些工作,都是後端 且至少是區塊輪遊 戲或加密貨幣的1
[心得] 2020-2-14 每日新聞#每日新聞 # 2020-2-14 每日新聞 # FB: # 四元交換排序 quadsort 在各種情況都贏快速排序法2
[問卦] LLVM是編譯器革命性的創新嗎?肥肥我剛剛在玩LLVM啦 前端可以用Clang編譯C語言 用Rustc編譯rust clang與rustc都會產生LLVM-IR 給中間的LLVM opt作最佳化1
[心得] 2020-2-9 每日新聞#每日新聞 # 2020-2-9 每日新聞 # FB: # Rust: image-rs 0.23 新增新的錯誤處理 解碼介面![[心得] 2020-2-9 每日新聞 [心得] 2020-2-9 每日新聞](https://i.imgur.com/sgXRyWzb.png)
1
Re: [問卦] C# Java Javasript要先學哪個好?這三個怎麼選絕對都不會是java C#吸收很多java的特長 已經屌打java 如果你是想使用jvm 建議學kotlin 那js vs c# 則是要先看你的目的是甚麼 js好處前後端都可以用上 寫前端網頁用js 後端用node.js