Contents

Design principle of C++ and Carbon

Let's deep dive into c++ and Carbon

Let’s deep dive into c++ and Carbon


tl;dr

About main refs

1. Principles

2. Compile and Linker

3. Why not C++?

References

Carbon vs C++

  1. Generics
  2. Memory Safety

Carbon’s Principles

  1. Errors are values: recoverable
  2. Information accumulation: with forward declarations used to introduce names beforethey are first referenced when necessary.
  3. Low context sensitivity: 코드를 읽고 이해하는 데 필요한 컨텍스트의 양을 충분히 효과적으로 줄이기 위해쓰기뿐만 아니라 읽기에도 이점이 있는 간결함을 기꺼이 희생하겠다.
  4. Prefer providing only one way to do a given thing
  5. Safety strategy
  6. Memory safety
  7. Type safety
  8. Data race safety
  9. One static open extennsion mechanism
  10. Success criteria

Difficulties improving C++

  1. Carbon team failed to meaningfully change C++’s direction and priorities towards improvements rather than backwards compatibility, and demonstrates how the process can fail to make directional decisions.
  2. C++’s process is oriented around standardization rather than design