- 主题:rust和自动驾驶
招cpp的人,进来学俩月rust,干活
【 在 stub (stub) 的大作中提到: 】
: 啊?cpp都难招人了?那rust岂不是招不到了..
--
FROM 123.120.160.*
哪里别扭了,本质上就是个带trait和默认move的c嘛
【 在 cpper (cpp beginner) 的大作中提到: 】
: rust死有余辜
: 语法怎么别扭怎么来,标新立异何必呢
: #发自zSMTH@ELE-AL00
: ...................
--
FROM 123.120.160.*
比如啥类型的坑?
rust的后面是llvm,这个东西不太可能有大坑,要万一有,影响的也不会只是rust
前面语法层面,trait 类型系统 内存模型 多线程 这几块,rust没有什么原创,都是各处抄来的经典设计
唯一的独创就是 默认move 和 借用检查。这两块只是限制了写法,没有提供什么新的功能,只是减法不是加法,写的时候限制太多的确恶心人,但是感觉写完之后出什么新问题的可能性也不会出在这方面。
如果你所说的坑,就是和编译器作斗争太恶心,(因为的确现在编译器还有很多自相矛盾的、按理应该能过但是实际上过不了的犯蠢的情景),那的确是坑太多了。。。
【 在 hgoldfish (老鱼) 的大作中提到: 】
: 标 题: Re: rust和自动驾驶
: 发信站: 水木社区 (Thu Mar 24 13:59:37 2022), 站内
:
: 你们不怕 rust 这个语言太新,很多坑没被踩出来,酿成大错?
:
: 【 在 EchoWorld (Echo) 的大作中提到: 】
: : 自动驾驶是一个足够大的killer application, 在性能和安全点上,选择rust是比较合适的。
: : 但是国内的自动驾驶应该大部分都是基于baidu的apollo,不太可能从c++转到rust。
: : 感觉rust在这个上面也有点失去了先机。
: : ...................
:
: --
: 灭绝人性啊
:
:
: ※ 来源:·水木社区 mysmth.net·[FROM: 47.243.39.*]
--
FROM 123.120.160.*
除了众所周知的借用检查器的各种毛病,目前我自己感受到的最大的坑就是, rust 当前还不支持 variadic function, 有些业务写起来很蛋疼
【 在 hgoldfish (老鱼) 的大作中提到: 】
: 比如 C++,一般禁止在 C++ 的构造/析构函数里面抛出异常,以及捕获异常的时候应该用 reference. 现在这些知识已经是人人尽知了,但 C++ 异常刚出来的时候很多人没搞明白。
: 不是说语言有问题。而是说社区还没有充分普及编程语言的深坑。应用新语言的时候就得小心一点。
: 不过我还是支持试试上 rust,可以在某些模块里面使用,如果好用,再逐渐普及开来。反正一时半会儿,也很难拉起一个纯 rust 的团队。
: ...................
--
FROM 123.120.160.*
以及前端开发工具链领域
【 在 zxkane (Kane) 的大作中提到: 】
: rust 已经在重塑整个云计算行业了,可靠性足以验证过了
: #发自zSMTH@GM1910
--
FROM 123.120.160.*
我说的前端工具链指的是swc那些, 把 babel webpack tsc 等等用 rust 重写, 速度可以提高两个数量级
【 在 eGust (十年) 的大作中提到: 】
: 我觉得是整体 cli/tui 工具都有被重写的趋势,常用 cli 工具几乎都有 rust 版
: 比如 ls - exa, grep - ripgrep,find - fd,sed - sd,cat - bat,tmux - zellij
: 前端工具的话,我只有 node version manager 用了 fnm。前两天还看到有 npm 的实现,反正我觉得蛋疼,就 rust 提升那点儿速度能节省0.1%的时间么
: ...................
--
FROM 123.120.160.*
vite 是一个新思路的产物, 和工具链用不用 rust 改写这个话题没关系
esbuild 也是这个广义的重写 web 工具链的运动的一部分, 而且应该算是先驱, 只不过使用 go 写的. 作者说, 当时只是想要把 js 写的版本机械改写为更快的语言, 试过 rust, 但 rust 没有 GC, 很多 tsc 原有的数据结构根本没法实现, 太麻烦, 所以才改用 go 写了.
如你所言, 虽然有了 vite, 但是生产链路还是需要 bundle 的, tsc babel 这样的
transpiler 需求也一直存在. 哪怕微软成功把类型塞进了 tc39, es 的各版本之间的转换照样不可避免.
【 在 eGust (十年) 的大作中提到: 】
: 标 题: Re: rust和自动驾驶
: 发信站: 水木社区 (Tue Mar 29 12:42:53 2022), 站内
:
: 这方面目前来看,esbuild 用做 dev-server,然后 bundle 走另外一个 pipeline 是正确的选择。
:
: vite 就是这种,利用浏览器对 esm 的支持,只编译需要的文件。而 webpack/rollup 等等的 bundler 会把所有文件都分析一遍,不管用得着用不着。项目一旦大起来,这个复杂度不是换成 rust 就能降低的。
:
: 另外一方面,esbuild 做的事情也不是 swc 能替代得了的。作者明确表示过,整个设计都是以速度优先,能做的事情非常有限,也不支持 plugin。简单来说,除了类型擦除,几乎不做任何事。类型检查交给 ide/editor 解决,在 build 之前自己跑 tsc 去检查。
:
: 另外,微软最近有一个新提案,让 js 支持 type 语法。简单来说,ts 就是合法的 js,但类型相当于 jsdoc 的作用,js 引擎不做类型检查。如果通过了话,以后连类型擦除的工作都不用了,基本上 dev-server 就是做点儿加 metadata、解决一下 path aliases,我理解连 sourcemap 都不用生成了。
:
: 【 在 beep (菜M.喵星耗子) 的大作中提到: 】
: : 我说的前端工具链指的是swc那些, 把 babel webpack tsc 等等用 rust 重写, 速度可以提高两个数量级
:
:
: --
:
: ※ 来源:·水木社区 mysmth.net·[FROM: 203.211.108.*]
--
FROM 123.120.160.*