Dana Jansens 4cf2c07f7d Explain more on the difference of where constraints (#4551) hai 1 ano
..
README.md 88e87b86b9 Updates to generics design details, part 2 (#3253) %!s(int64=2) %!d(string=hai) anos
appendix-coherence.md 5d73743971 Add link for coherence appendix to Swift forums (#4241) hai 1 ano
appendix-rewrite-constraints.md 6bbbd4ec1f More consistent package syntax (#3927) hai 1 ano
appendix-witness.md 58c106010c Updates to design docs to reflect accepted proposals (#3254) %!s(int64=2) %!d(string=hai) anos
details.md 4cf2c07f7d Explain more on the difference of where constraints (#4551) hai 1 ano
goals.md 21fb6f5802 Update broken links (#3786) %!s(int64=2) %!d(string=hai) anos
overview.md e15bdbb36c Update generics overview (#3061) %!s(int64=2) %!d(string=hai) anos
terminology.md 58c106010c Updates to design docs to reflect accepted proposals (#3254) %!s(int64=2) %!d(string=hai) anos

README.md

Generics

This directory contains the collection of documents describing the generics feature of Carbon:

  • Overview - A high-level description of the generics design, with pointers to other design documents that dive deeper into individual topics
  • Goals - The motivation and principles guiding the design direction
  • Terminology - A glossary establishing common terminology for describing the design
  • Detailed design - In-depth description
    • Appendix: Coherence - Describes the rationale for Carbon's choice to have coherent generics, and the alternatives.
    • Appendix: Rewrite constraints - Describes the detailed rules governing rewrite constraints, and why resolving them terminates.
    • Appendix: Witness tables - Describes an implementation strategy for checked generics, and Carbon's rationale for only using it for dynamic dispatch.