为取代 C++,Google 强势开源 Carbon 语言!( 二 )


尽管Carbon是在谷歌内部开始的 , 但该团队愿意将其开源 , 为的是使其在未来能够获得成功 , Carbon需要成为一个“独立的并且由社区驱动的项目" , 而不仅仅是为谷歌自用 。
“学不动”的开发者们 , 依然期待
随着这门新语言的正式发布 , 不少开发者跃跃欲试 , 仅在HackerNews(https://news.ycombinator.com/item?id=32151609)上就引发400多名开发者关于该语言的探讨 。
前排“课代表”对Carbon做了进一步的总结:
@cogman10:如果你像我一样 , 想知道"是什么让Carbon与Rust或Zig不同?那我总结三点:
1.能够与各种各样的代码互操作 , 如类/结构和模板 , 而不仅仅是自由函数 。
2.愿意将C++的习性暴露在Carbon代码中 , 必要时也可以反过来 , 以使互操作层的性能最大化 。
3.使用包装器和通用编程 , 包括模板 , 以减少或消除运行时的开销 。
换句话说 , Carbon可以做Rust不能做的事情 , 就是用一个'foo'方法调用一个C++类 。 或者创建一个带有'foo'方法的类 , 然后从C++中调用该方法 。 这可能是实现C++相互操作中要克服的最大障碍之一 。 大多数人不会这样做 , 相反 , 你会做一个C函数绑定和结构 , 并通过它移动数据/调用函数 。
为取代 C++,Google 强势开源 Carbon 语言!
文章图片
另一名开发者指出了Carbon在安全方面可能存在的问题 。
@ansible:总的来说 , Carbon在安全方面做出了妥协 , 以便为C++的发展提供一条道路 。 C++开发者必须能够自如地迁移他们的代码库 , 并且能够以一种基本自动化的方式进行迁移 。 为了实现自动迁移 , Carbon不能要求对迁移的C++代码进行根本性的重新设计 。 虽然迁移工具在理论上可以将所有被迁移的代码标记为不安全的 , 但Carbon应该使用一种安全策略 , 对C++代码进行优雅地降解并提供改进 , 无论是否被迁移 。
这并不意味着Carbon永远不会默认采用有保障的安全策略 , 只是C++代码的性能和迁移需要优先考虑 , 任何设计都需要在其他目标的背景下考虑 。 以后仍有可能采用有保障的安全 , 尽管这需要确定一个迁移路径 。
这是非常有趣和务实的 。 如果他们最终能通过与Rust的借用检查器不同的路径得出同样水平的安全保证 , 那就很有意思了 。
由于他们的目标之一是将现代C++自动翻译成Carbon , 我确实想知道这在一般情况下会有多大效果 。
我绝对欢迎一个更容易阅读和理解的C++的替代品 。 这将是对世界的一个好处 。
为取代 C++,Google 强势开源 Carbon 语言!
文章图片
对于想要尝鲜的小伙伴 , 现在就可以下载源代码(https://github.com/carbon-language/carbon-lang#getting-started)在自己的电脑上体验了 。 另外 , 值得注意的是 , Carbon与免费的CompilerExplorer网络应用也进行了整合(https://carbon.compiler-explorer.com/) , 所以大家可以直接在浏览器中开始使用Carbon编程语言 , 用了之后也别忘了回来分享一下你的体验~~
参考链接:https://9to5google.com/2022/07/19/carbon-programming-language-google-cpp/