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

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.