yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
1f06fb291
master
Slang Design and Implementation Notes
This directory contains documents that are primarily intended for developers working on the Slang implementation. They are not intended to be helpful to Slang users.
These documents can only be trusted to reflect the state of the codebase or the plans of their authors at the time they were written. Changes to the implementation are not expected to always come with matching changes to these documents, so some amount of drift is to be expected.
Developers interested in contributing to Slang might want to start with the Overview document, which describes the overall compilation pipeline that Slang uses and the purpose of the various steps (both implemented and planned).
The Coding Conventions document describes the conventions that should be followed in all code added to the Slang project.
The Interfaces document describes the high-level design plan for Slang's interfaces and generics features.
The Declaration References document is intended to help out developers who are mystified by the heavily used DeclRef type in the compiler implementation.
The Intermediate Representation (IR) document describes the design of Slang's internal IR.
The Existential Types document goes into some detail about what "existential types" are in the context of the Slang language, and explains how we may go about supporting them.
The Capabilities document explains the proposed model for how Slang will support general notions of profile- or capability-based overloading/dispatch.
The Casting document explains how casting works in the slang C++ compiler code base.
The Experimental API Interfaces document explains how experimental Slang API changes are to be deployed.
1Slang Design and Implementation Notes 2===================================== 3 4This directory contains documents that are primarily intended for developers working on the Slang implementation. 5They are not intended to be helpful to Slang users. 6 7These documents can only be trusted to reflect the state of the codebase or the plans of their authors at the time they were written. Changes to the implementation are not expected to always come with matching changes to these documents, so some amount of drift is to be expected. 8 9Developers interested in contributing to Slang might want to start with the [Overview](overview.md) document, which describes the overall compilation pipeline that Slang uses and the purpose of the various steps (both implemented and planned). 10 11The [Coding Conventions](coding-conventions.md) document describes the conventions that should be followed in all code added to the Slang project. 12 13The [Interfaces](interfaces.md) document describes the high-level design plan for Slang's interfaces and generics features. 14 15The [Declaration References](decl-refs.md) document is intended to help out developers who are mystified by the heavily used `DeclRef` type in the compiler implementation. 16 17The [Intermediate Representation (IR)](ir.md) document describes the design of Slang's internal IR. 18 19The [Existential Types](existential-types.md) document goes into some detail about what "existential types" are in the context of the Slang language, and explains how we may go about supporting them. 20 21The [Capabilities](capabilities.md) document explains the proposed model for how Slang will support general notions of profile- or capability-based overloading/dispatch. 22 23The [Casting](casting.md) document explains how casting works in the slang C++ compiler code base. 24 25The [Experimental API Interfaces](experimental.md) document explains how experimental Slang API changes are to be deployed.