Chandler Carruth 01e12111a8 Auto-update pre-commit repositories and fix. (#3427) преди 2 години
..
README.md 88e87b86b9 Updates to generics design details, part 2 (#3253) преди 2 години
appendix-coherence.md a8ca499450 Updates to generics design details, part 1 (#3231) преди 2 години
appendix-rewrite-constraints.md 88e87b86b9 Updates to generics design details, part 2 (#3253) преди 2 години
appendix-witness.md 58c106010c Updates to design docs to reflect accepted proposals (#3254) преди 2 години
details.md 01e12111a8 Auto-update pre-commit repositories and fix. (#3427) преди 2 години
goals.md 09b5ab14d8 Link to Swift undecidable type-system problems (#3394) преди 2 години
overview.md e15bdbb36c Update generics overview (#3061) преди 2 години
terminology.md 58c106010c Updates to design docs to reflect accepted proposals (#3254) преди 2 години

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.