←back to thread

155 points samuell | 1 comments | | HN request time: 0s | source
Show context
nxobject ◴[] No.44747122[source]
If you've seen this before, it's worth looking at the 2025 roadmap – it's long-term work, a full safety story hasn't been quite figured out (TBD end 2025), and 0.1 is TBD end 2026. About the pace of Rust, although without the active forum that Rust had in its early days.

https://docs.carbon-lang.dev/docs/project/roadmap.html

What _is_ interesting is that I get the impression that Carbon is being workshopped with the C++ community, rather than the wider PLT community -- I worry that they won't benefit from the broader perspectives that'll help it avoid well-known warts elsewhere.

replies(5): >>44747312 #>>44748456 #>>44748942 #>>44749111 #>>44753122 #
IshKebab ◴[] No.44748456[source]
> being workshopped with the C++ community

Honestly seems like a dubious idea. The C++ community that remains are even more "just get good" than before. They still think UB all over the place is fine.

replies(2): >>44748873 #>>44751253 #
GuB-42 ◴[] No.44751253[source]
I'd say the C++ community is torn.

Some part of it want C++ to be Rust, with a focus on compile-time safety. Others take "C++" literally as "C with extra stuff" and value performance over safety.

Companies like Google are likely to be in the former camp, as for what they are doing, security is critical. Unsurprisingly, Carbon is a Google project.

Video game companies on the other hand are likely to be in the latter camp. Most of the times, security is not as critical, especially for offline games, and memory corruption usually don't go further than a game crash. Tight memory management however is critical, and it often involves raw pointers and custom allocation schemes.

replies(1): >>44751551 #
JonChesterfield ◴[] No.44751551[source]
I blame the "we won't recompile anything ever" stance from the financial organisations for the breakdown. It means C++ cannot fix mistakes, even when they harm performance, under the general name of "abi stability".

Thus there is an opening for a faster language. And still for a safer one. And for an easier one to use. So all C++ has going for it is inertia. It's moribund unless the committee reconsider their stance on intentionally losing the performance competition.

replies(1): >>44752151 #
Buttons840 ◴[] No.44752151[source]
Will Carbon improve the ABI situation? Will Carbon be easier to interface with from other languages?

A major role that C plays today is being the common protocol all languages speak[0]. C++ can't fill this role, and neither can Rust.

There is a huge opportunity for some language to become the next common protocol, the common ABI, that all languages share in common.

(Maybe Rust could do this, but they haven't stabilized their ABI yet, and I don't the details.)

[0]: https://faultlore.com/blah/c-isnt-a-language/

replies(3): >>44752892 #>>44753618 #>>44768206 #
1. IshKebab ◴[] No.44753618{4}[source]
Well it's not really C that fills that role it's the C ABI which any language can use without an ounce of C. Rust can use the C ABI.

It would be nice if there was a somewhat higher level ABI that languages could use though. The C ABI is very low level and tedious.