我来推一下C++吧

g
guvest

MCU 是靠各自unique的tool chain吃饭和竞争。你站在厨房转360度。没几个MCU是给你统一的programming interface的。freeRTOS之类只起到常用库的用处。与更强大的
processors 上的各种os是完全不同的。

所以我认为Cpp在MCU上没有任何前途。举几个例子没用。go, pyhton, rust早几年就有MCU上的什么什么例子
了。现在如何呢?

另外好多人分不清MCU,MPU。

【 在 magagop(magagop) 的大作中提到: 】
<br>: 我們正相反,本來想改用freertos,發現bug多,然後ucos3開源了,就不改了。
ucos3
<br>: 適合新手,文檔和代碼都比freertos好多了。我要說的意思是:最近cpp
進步明
顯,連
<br>: 最後MCU的陣地都可以用Cpp14了,lambda開發MCU不要太爽
<br>: 是巨大
<br>

g
guvest

名字叫OS的东西不完全是一回事。

【 在 helpme(名虚胖字满肥) 的大作中提到: 】

: 已经有embedded OS用Rust写的了,叫TockOS。Rust本来要抢的是C /Java back end

: industry software的市场,你说的那些东西都比较小众,用Rust重写也不难。

: 那个OpenMP啥的一堆问题,完全是BS,根本没啥人用。

: cache

g
guvest

语言语法那都容易。c 标准库更麻烦。但是用处也更大。

【 在 netghost(Up to Isomorphism) 的大作中提到: 】
<br>: C應該要會,否則你在電腦上就永遠是個小白。
<br>: 我覺得CPP如果你已經會了就算了,不會的,沒什麼必要新學。
<br>: 問題計算機有很多別的東西,學幾門語言都是小事。
<br>: cache
<br>

m
magagop

如果你認為ML和HPC都是小眾,簡單用Rust寫寫就能替代,我也無言了

【 在 helpme(名虚胖字满肥) 的大作中提到: 】

: 已经有embedded OS用Rust写的了,叫TockOS。Rust本来要抢的是C /Java back end

: industry software的市场,你说的那些东西都比较小众,用Rust重写也不难。

: 那个OpenMP啥的一堆问题,完全是BS,根本没啥人用。

: cache

m
magagop

我認為Cpp是所有語言裡面最難學,最複雜的。還真不是所有程序猿能掌握的。1980年
的40歲老語言,尚能飯否的只有Cpp或者C。但是Cpp比C複雜一個數量級。

【 在 netghost(Up to Isomorphism) 的大作中提到: 】

: C應該要會,否則你在電腦上就永遠是個小白。

: 我覺得CPP如果你已經會了就算了,不會的,沒什麼必要新學。

: 問題計算機有很多別的東西,學幾門語言都是小事。

: cache

m
magagop

Cortex-A Linux弱爆了,很多功能無法實現,根本不是實時系統。現在流行MCU直接
Cpp,GUI和Wasm一起上,小電池供電。

【 在 TeacherWei(TW) 的大作中提到: 】

: 那是你们赶上好时候了而已。当然对我来讲RTOS不是关键,怎么都能搞一个稳定的。这

: 又回到了老问题,一个内存几十K的玩意儿,连OS都不是关键,C lambda能爽
在哪里?

: 当然了,我用C 是很爽,但是那是在大ARM端,用Linux。和MCU共享几万行C代
码。

: 你们用IAR么?好奇他们还能不能活下去?我是直接上GNU C embedded的。
Love it!

: ucos3

: 样。

h
helpme

我是说你的MCU在工业界是小众,现在大部分industry software都是在Linux上run,小部分在Windows。ML和HPC使用C++完全是历史原因,不代表it如何如何优越,无可取代
。C++里面的东东越加越多越来越乱:上个世纪的程序员爱写Java style的C++,本世纪初的爱用template,最近五年的新鸟爱写python style的。这三类人尿不到一壶里,语言本身dark corner又多,好好的项目很容易被这种无聊的东西distract,搞得乱七八
糟。其实很多人都期盼着一种能够替代C++的语言出现,不像C那么raw又不像C++那么乱,最好性能也高安全性还强,Rust近五年赢得了大量关注正是因为如此。

【 在 magagop (magagop) 的大作中提到: 】
: 如果你認為ML和HPC都是小眾,簡單用Rust寫寫就能替代,我也無言了
:
: 已经有embedded OS用Rust写的了,叫TockOS。Rust本来要抢的是C /Java
back
: end
:
: industry software的市场,你说的那些东西都比较小众,用Rust重写也不难。
:
: 那个OpenMP啥的一堆问题,完全是BS,根本没啥人用。
:
: cache
:

m
magagop

語言好不好用,最重要的不是「能不能也用它」,而是「只能選它」。其他JS、Py、
Java我都認為可以接受,唯獨Rust,你能找出一類應用:「必須它、只能它、別無選擇」麼。。。

C和Cpp這類應用很多,小到Linux內核,大到CUDA,想學就只能用它。

我特別服氣的一句話:「不是讓人愛你,而是讓人需要你」,讓別人皺眉心裡罵娘但又別無選擇,就叫「黏性」

【 在 helpme(名虚胖字满肥) 的大作中提到: 】

: 我是说你的MCU在工业界是小众,现在大部分industry software都是在Linux上
run,小

: 部分在Windows。ML和HPC使用C 完全是历史原因,不代表it如何如何优越,无
可取代

: 。C 里面的东东越加越多越来越乱:上个世纪的程序员爱写Java style的C ,本世纪

: 初的爱用template,最近五年的新鸟爱写python style的。这三类人尿不到一壶里,语

: 言本身dark corner又多,好好的项目很容易被这种无聊的东西distract,搞得
乱七八

: 糟。其实很多人都期盼着一种能够替代C 的语言出现,不像C那么raw又不像C 那么乱

: ,最好性能也高安全性还强,Rust近五年赢得了大量关注正是因为如此。

: back

h
helpme

又来缠夹不清,多少人告诉你了不要把C和C++混为一谈。有些地方只能用C不假,只能
用C++的好像还没有。C++的卖点就是backwards compatible w/ C,没有GC所以
performance好。Rust就是没法做到第一条,但是只要写新软件的话,不久Rust完全可
以取代C++,给人多一个选择。Linus当初无比痛恨C++,那么多年一直拒绝使用,但是
Rust出来没几年Linux就准备接受了,已经很说明问题了。

【 在 magagop (magagop) 的大作中提到: 】
: 語言好不好用,最重要的不是「能不能也用它」,而是「只能選它」。其他JS、Py、: Java我都認為可以接受,唯獨Rust,你能找出一類應用:「必須它、只能它、別無選擇
: 」麼。。。
: C和Cpp這類應用很多,小到Linux內核,大到CUDA,想學就只能用它。
: 我特別服氣的一句話:「不是讓人愛你,而是讓人需要你」,讓別人皺眉心裡罵娘但又
: 別無選擇,就叫「黏性」
:
: 我是说你的MCU在工业界是小众,现在大部分industry software都是在Linux上
: run,小
:
: 部分在Windows。ML和HPC使用C 完全是历史原因,不代表it如何如何优越,无
: 可取代
: ...................

m
magagop

Linus這個噴子對你來說放屁都是香的。我隨便舉一個只能用cpp的例子,oneapi,你研究去吧。

【 在 helpme(名虚胖字满肥) 的大作中提到: 】

: 又来缠夹不清,多少人告诉你了不要把C和C 混为一谈。有些地方只能用C不假
,只能

: 用C 的好像还没有。C 的卖点就是backwards compatible w/ C,没有GC所以

: performance好。Rust就是没法做到第一条,但是只要写新软件的话,不久Rust
完全可

: 以取代C ,给人多一个选择。Linus当初无比痛恨C ,那么多年一直拒绝使用
,但是

: Rust出来没几年Linux就准备接受了,已经很说明问题了。

h
helpme

呵呵,看你这满嘴屎尿屁的操性,你更像个喷子。

【 在 magagop (magagop) 的大作中提到: 】
: Linus這個噴子對你來說放屁都是香的。我隨便舉一個只能用cpp的例子,oneapi,你研
: 究去吧。
:
: 又来缠夹不清,多少人告诉你了不要把C和C 混为一谈。有些地方只能用C不假
: ,只能
:
: 用C 的好像还没有。C 的卖点就是backwards compatible w/ C,没有GC所以
:
: performance好。Rust就是没法做到第一条,但是只要写新软件的话,不久
Rust
: 完全可
:
: 以取代C ,给人多一个选择。Linus当初无比痛恨C ,那么多年一直拒绝使用
: ,但是
:
: Rust出来没几年Linux就准备接受了,已经很说明问题了。
: ...................

n
netghost

我個人認爲intel在走sun的老路。就是一個硬件廠商成天花一堆時間和錢在這種軟件架構上面。問題是,別人也不是傻子,這個層面上打交道的是開發人員,別人不是it經理,脫離現有的庫而去用你這種明天就可能沒下文的的東西有沒有point是一目瞭然的。
【 在 magagop (magagop) 的大作中提到: 】
: Linus這個噴子對你來說放屁都是香的。我隨便舉一個只能用cpp的例子,oneapi,你研
: 究去吧。
:
: 又来缠夹不清,多少人告诉你了不要把C和C 混为一谈。有些地方只能用C不假
: ,只能
:
: 用C 的好像还没有。C 的卖点就是backwards compatible w/ C,没有GC所以
:
: performance好。Rust就是没法做到第一条,但是只要写新软件的话,不久
Rust
: 完全可
:
: 以取代C ,给人多一个选择。Linus当初无比痛恨C ,那么多年一直拒绝使用
: ,但是
:
: Rust出来没几年Linux就准备接受了,已经很说明问题了。
: ...................

m
magagop

那麼請各位想想,做一個類似oneapi的東西,同時支持cpu、gpu、fpga,用什麼語言最好?難道是rust?或者是go?還是c?java?python?js?
未來intel、nvidia、amd都是大而全的公司,都有cpu gpu accelerater,三足鼎立,
用什麼語言能成本最低,性能最高?
我早就說過:造芯片的,不能沒有cpp。光用c根本不好使,systemc其實就是cpp。

【 在 netghost(Up to Isomorphism) 的大作中提到: 】

: 我個人認爲intel在走sun的老路。就是一個硬件廠商成天花一堆時間和錢在這種軟件架

: 構上面。問題是,別人也不是傻子,這個層面上打交道的是開發人員,別人不是it經理

: ,脫離現有的庫而去用你這種明天就可能沒下文的的東西有沒有point是一目瞭
然的。

: Rust

h
helpme

谁告诉你Rust不能?看看这个参照LLVM的思路来的project:

http://llhd.io/

【 在 magagop (magagop) 的大作中提到: 】
: 那麼請各位想想,做一個類似oneapi的東西,同時支持cpu、gpu、fpga,用什麼語言最
: 好?難道是rust?或者是go?還是c?java?python?js?
: 未來intel、nvidia、amd都是大而全的公司,都有cpu gpu accelerater,三足鼎立,
: 用什麼語言能成本最低,性能最高?
: 我早就說過:造芯片的,不能沒有cpp。光用c根本不好使,systemc其實就是cpp。
:
: 我個人認爲intel在走sun的老路。就是一個硬件廠商成天花一堆時間和錢在這種
: 軟件架
:
: 構上面。問題是,別人也不是傻子,這個層面上打交道的是開發人員,別人不是
: it經理
:
: ,脫離現有的庫而去用你這種明天就可能沒下文的的東西有沒有point是一目瞭
: ...................

c
chebyshev

這類項目只能用cpp做。這點是對的。此類項目各大公司多的是。
tensorflow等等深學庫都是cpp寫的呢。python+cpp是現在的算法標配。
所以誰說cpp沒前途了啥的,沒必要爭論。rust社區這方面是最弱的。幾年前我看過他們
blog啥的。他們沒有計劃也沒有能力往這個方向走。

但是這個項目本身成立麼值得思考。
其他的CPU,GPU,FPGA公司自己沒有接口?

憑啥用戶要通過intel的接口去用tensorflow?吃飽撐了的?傻了?
任何一個有經驗的開發者都不可能不考慮這些問題。
你問問版上搞深學的有幾個準備走這條路。

再一個,其他的CPU,GPU,FPGA公司憑啥支持你。未來讓你收過路費。
隨便下一個版本給你下點藥,這個產品就死了。
我看,這個產品本身就是個假項目。也就自己high一下。用來安排就業。

【 在 magagop (magagop) 的大作中提到: 】
: 那麼請各位想想,做一個類似oneapi的東西,同時支持cpu、gpu、fpga,用什麼語言最
: 好?難道是rust?或者是go?還是c?java?python?js?
: 未來intel、nvidia、amd都是大而全的公司,都有cpu gpu accelerater,三足鼎立,
: 用什麼語言能成本最低,性能最高?
: 我早就說過:造芯片的,不能沒有cpp。光用c根本不好使,systemc其實就是cpp。
:
: 我個人認爲intel在走sun的老路。就是一個硬件廠商成天花一堆時間和錢在這種
: 軟件架
:
: 構上面。問題是,別人也不是傻子,這個層面上打交道的是開發人員,別人不是
: it經理
:
: ,脫離現有的庫而去用你這種明天就可能沒下文的的東西有沒有point是一目瞭
: ...................

n
netghost

首先,我覺得你要想一件事,cpu,gpu,fpga的廠商爲什麼要支持一個東西叫做oneapi?
對廠商的好處在哪裏?

第二什麼叫做CPP?CPP不是一個語言,而是一堆語言的集合,CPP98?11?14?17?20?23?
你想值哪一個?

【 在 magagop (magagop) 的大作中提到: 】
: 那麼請各位想想,做一個類似oneapi的東西,同時支持cpu、gpu、fpga,用什麼語言最
: 好?難道是rust?或者是go?還是c?java?python?js?
: 未來intel、nvidia、amd都是大而全的公司,都有cpu gpu accelerater,三足鼎立,
: 用什麼語言能成本最低,性能最高?
: 我早就說過:造芯片的,不能沒有cpp。光用c根本不好使,systemc其實就是cpp。
:
: 我個人認爲intel在走sun的老路。就是一個硬件廠商成天花一堆時間和錢在這種
: 軟件架
:
: 構上面。問題是,別人也不是傻子,這個層面上打交道的是開發人員,別人不是
: it經理
:
: ,脫離現有的庫而去用你這種明天就可能沒下文的的東西有沒有point是一目瞭
: ...................

c
chebyshev

oneapi這個項目合理性疑問很大。進去這個種組,說不定2,3年就要換工作。
老印manager說不定自己換地方升職了。

rust沒有計劃要搞科學計算。不然我就會用。
所以這才是cpp長遠來看的核心競爭力。

【 在 netghost (Up to Isomorphism) 的大作中提到: 】
: 首先,我覺得你要想一件事,cpu,gpu,fpga的廠商爲什麼要支持一個東西叫做
oneapi?
: 對廠商的好處在哪裏?
: 第二什麼叫做CPP?CPP不是一個語言,而是一堆語言的集合,CPP98?11?14?17?20?23?
: 你想值哪一個?

n
netghost

Intel這種有一打這樣的項目,我認識在裏面幹的,風險比去startup還高。

rust的點比較奇怪,一個想換掉CPP的語言,現在社區裏面一半以上的精力在莫名其妙
地花在attacking C上面。歷史上面凡是走這條路的語言, 沒有不死掉的。

此外,一個只有一個編譯器,沒有 standard,基本上支持一種cpu的語言,號稱要幹這幹那的,我說實話不看好。
【 在 chebyshev (......) 的大作中提到: 】
: oneapi這個項目合理性疑問很大。進去這個種組,說不定3年就要換工作。
: 老印manager說不定自己換地方升職了。
: rust沒有計劃要搞科學計算。不然我就會用。
: 所以這才是cpp長遠來看的核心競爭力。
: oneapi?

c
chebyshev

大點的半導體公司都一樣的。這也有好處。總不能沒活干就裁員吧。
這個項目還不是最unreasonable的。也許找到幾個關係戶買了,用了就收支平衡了。
或者intel下了重注,決定統一自己的xPU之對外接口。那也可以。就跟MSFT轉.net差不多。

但這個非常難。你得想辦法讓下一版本的tensorflow走你這個接口。而不是傳統之舊接口。
人家還得防著將來被你卡死了。

再一個,人家可以在你這接口上弄一層python。弄個pyOneApi。成為人家接口的一個小選項。

rust一開始說是替代cpp。現在估計碰到瓶頸了。market space很難找的。
所有說替代C的,都是給觀眾看的一場戲。半導體公司不認,EE的人不認,你有什麼辦
法。

【 在 netghost (Up to Isomorphism) 的大作中提到: 】
: Intel這種有一打這樣的項目,我認識在裏面幹的,風險比去startup還高。
: rust的點比較奇怪,一個想換掉CPP的語言,現在社區裏面一半以上的精力在莫名其妙
: 地花在attacking C上面。歷史上面凡是走這條路的語言, 沒有不死掉的。
: 此外,一個只有一個編譯器,沒有 standard,基本上支持一種cpu的語言,號稱要幹這
: 幹那的,我說實話不看好。

m
magagop

先搞明白OneAPI是什麼,能幹什麼,你舉這種幾個人的小paper項目有什麼意義,可以
production嗎,有硬件芯片支持嗎,roadmap呢?再說LLVM也是Cpp的。

【 在 helpme(名虚胖字满肥) 的大作中提到: 】

: 谁告诉你Rust不能?看看这个参照LLVM的思路来的project:

: http://llhd.io/

m
magagop


韩銆俷vidia鍜宎md鏈締涔熸渻璺熼€插嚭椤炰技鐨勬澅瑗匡紝浣嗗ぇ瀹朵竴瀹氶兘
槸鍦╟pp涓婃悶锛屼笉鏈冩湁鑺墖鍏徃鐒¤亰鍦╮ust鎴杇o涓婃悶鐨勶紝棰ㄩ毆澶ぇ锛屾矑鏈夊競鍫达紝cpp鏄敮涓€閬告搰銆

繁鐨刢pp compiler锛岄€e井杌熴€佽構鏋滈€欎簺鍊嬩汉娑堣不闆诲瓙鍏徃鍦╟pp上也不落後。cpp是iso標準,支持從mcu到hpc所有form facter。r

亷鍘10骞撮€叉闈炲父澶э紝鍏朵粬瑾炶█鏍规湰鐒℃硶鐩告瘮銆
go有的功能cpp可以有,rust特別的功能cpp當然也可以有。現
在的modern cpp是唯一一個可以使用五種以上完全不同代碼模

栭潏瀹屽倷锛屽彲浠ユ摷鍑鸿姳渚嗐€傛湭渚哻pp瓒婁締瓒婂儚python锛屾渻鎴愮偤绗
叚绋ā寮忋€傝€屼笖鍩烘柤cpp鐨勬摯灞曚篃闈炲父澶氾細systemc銆乷penmp銆乷

【 在 chebyshev(......) 的大作中提到: 】

╟pp鍋氥€傞€欓粸鏄皪鐨勩€傛椤為爡鐩悇澶у叕鍙稿鐨勬槸銆

楁硶妯欓厤銆

: 所以誰說cpp沒前途了啥的,沒必要爭論。r
ust社區這方面是最弱的。幾年前我看過他們

: blog啥的。他們沒有計劃也沒有能力往這個方向走。
<
br>: 但是這個項目本身成立麼值得思考。

: 其他的CPU,GPU,FPGA公司自己沒有接口?

埗瑕侀€氶亷intel鐨勬帴鍙e幓鐢╰ensorflow锛熷悆椋芥拹浜嗙殑锛熷偦浜嗭紵

: 任何一個有經驗的開發者都不可能不考慮這些問題。

: 你問問版上搞深學的有幾個準備走這條路。

: 再一

不銆
: ...................

m
magagop

rust肯定搞不定HPC,現在cpp有時候都無法取代fortran,rust更不可能。cpp是最複雜、最全面、最中立、最有歷史的現代計算機語言,c不算現代語言。rust連iso都不是。go只有一家公司一個編譯器。我最最反的就是這兩個。js都比它們強。

【 在 chebyshev(......) 的大作中提到: 】

: oneapi這個項目合理性疑問很大。進去這個種組,說不定2,3年就要換工作。

: 老印manager說不定自己換地方升職了。

: rust沒有計劃要搞科學計算。不然我就會用。

: 所以這才是cpp長遠來看的核心競爭力。

: oneapi?

h
helpme

你这基本已经是邪教了,去年懂王下台前你是不是把票投给了它?

【 在 magagop (magagop) 的大作中提到: 】
: rust肯定搞不定HPC,現在cpp有時候都無法取代fortran,rust更不可能。cpp是最複雜
: 、最全面、最中立、最有歷史的現代計算機語言,c不算現代語言。rust連iso都不是。
: go只有一家公司一個編譯器。我最最反的就是這兩個。js都比它們強。
:
: oneapi這個項目合理性疑問很大。進去這個種組,說不定2,3年就要換工作。:
: 老印manager說不定自己換地方升職了。
:
: rust沒有計劃要搞科學計算。不然我就會用。
:
: 所以這才是cpp長遠來看的核心競爭力。
:
: oneapi?
:

g
guvest


"現代“的意思不是”好“。(在列寧時代可能是的)

從進化論的觀點看,有後現代。我不是開玩笑,perl的作者有個notes,就說perl成功
是因為其為
後現代的。

從復古論的角度來看。老的就是好的。

所以modernity夾在中間,有一出門就過時的意思。

不過你說的rust尚且沒有ISO,所以沒有prpomising這點是對的且很重要。
【 在 magagop (magagop) 的大作中提到: 】
: rust肯定搞不定HPC,現在cpp有時候都無法取代fortran,rust更不可能。cpp是最複雜
: 、最全面、最中立、最有歷史的現代計算機語言,c不算現代語言。rust連iso都不是。
: go只有一家公司一個編譯器。我最最反的就是這兩個。js都比它們強。
:
: oneapi這個項目合理性疑問很大。進去這個種組,說不定2,3年就要換工作。:
: 老印manager說不定自己換地方升職了。
:
: rust沒有計劃要搞科學計算。不然我就會用。
:
: 所以這才是cpp長遠來看的核心競爭力。
:
: oneapi?
:

n
netghost

rust的最最最大問題是 - 沒有user。

這件事情particular的糟糕在於rust的developer數目其實非常多,這些人都在日以繼
夜地produce code,但是卻沒人用。Why?

exactly是因爲這個群體的人非常care語言本身的結果,所以這些人大部分最喜歡的就
是找一個已近有的項目,用rust重新實現一邊,同時到處騷擾別人去reimplement本來
好好的程序,這波人被叫做rust evangelist strike force.

好的應用,具體用什麼語言只是相對少的部分,這是過於強調語言本身的社區一個很大的問題。

【 在 magagop (magagop) 的大作中提到: 】
: rust肯定搞不定HPC,現在cpp有時候都無法取代fortran,rust更不可能。cpp是最複雜
: 、最全面、最中立、最有歷史的現代計算機語言,c不算現代語言。rust連iso都不是。
: go只有一家公司一個編譯器。我最最反的就是這兩個。js都比它們強。
:
: oneapi這個項目合理性疑問很大。進去這個種組,說不定2,3年就要換工作。:
: 老印manager說不定自己換地方升職了。
:
: rust沒有計劃要搞科學計算。不然我就會用。
:
: 所以這才是cpp長遠來看的核心競爭力。
:
: oneapi?
: