各位对 cppfront 怎么看?

2022-11-26 17:14:01 +08:00
 LaTero
Rust 最难受的一点就是生态。很多还在用 cpp 的邻域,cpp 就是 de facto standard ,而大部分人没有能力或时间去造轮子或者写 binding (闭源的连 binding 都不好写)。Rust 火起来的时候感觉这语言写游戏是很适合的,但真做起来还是得 cpp 。
cppfront 虽然连 alpha 都没到,但看 Stutter 的演讲解决了很多缺陷,同时能做到 100%兼容 cpp 。不知道各位对 cppfront 的前景如何看待?
2409 次点击
所在节点    C++
7 条回复
leighton
2022-11-26 17:18:23 +08:00
追求 100%兼容 cpp 我会等 carbon 。但是都不如直接抛弃历史包袱用 rust 来得爽
SMGdcAt4kPPQ
2022-11-26 17:28:49 +08:00
不看好,需要先编译到 cpp 再编译,无法解决 cpp 编译速度慢的问题。需要有一种编程语言能像 cpp 导入 c 头文件一样能直接导入 cpp 头文件,同时编译速度快,那么这语言就成了
tinkerer
2022-11-26 21:42:38 +08:00
rust 库 cxx 不知道你有没有把玩过。
neoblackcap
2022-11-27 01:24:01 +08:00
战胜对手,一般都不是在对手的战场作战。nginx 不会突然替代已经在用 Apache 的项目,但是它的确会在新的项目中替代 Apache 。
同理 Rust 不会一下子,但是在可以用 Rust 以及可以用 Cpp 的场合,人们很有可能会选用 Rust 。Cpp 模板写个类型约束都累得慌,得熟悉各种现代 Cpp 用法,还得知道 SFINAE 。Rust 就是入门就能写好约束。
agagega
2022-11-27 15:30:27 +08:00
Google 那个 Carbon 没想明白是要干啥,不上不下的,既不能 cppfront 一样和 C++源码级兼容,也不如 Rust 直接另起炉灶。

cppfront 是一个探索,值得鼓励,C++总得要改变的,现在很多人就是单纯像只用过 iPad 的人看不惯 Mac 一样看不惯 C++而已,改进多了要说「哎呀我 C++11 都还没学完」,改进少了又说「这帮老头子不思进取」。

不过在一个力图像当年 C++兼容 C 一样的预处理器里加太多语法改动没啥意义,重点还应该在改变很多因为兼容性导致的默认行为。现在 Clang 和 GCC 都在加可选的 attribute 以让 C++开启类似 Rust 的检查,cppfront 和他们配合一下,变成一个语言级别的 GSL 的话还不错。

业界现有的 C++代码库是非常庞大的,而且还在活跃开发中。这种不破坏兼容性的渐进式改进会带来很多帮助。
LaTero
2022-11-27 16:58:56 +08:00
@agagega 确实,我看 core guidelines 的时候就在想,很多守则本就应该让编译器来检查
L4Linux
2022-11-27 17:00:30 +08:00
@ComputerIdiot 你找的是不是 C++ module ,GCC 的 module 勉强已经能用了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/898118

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX