Sometimes a language feature proposed for WGSL requires experiementation to prove its worth. Tint needs to support these, in general to enable that experimentation.
The steps for doing so are:
Choose a name for the feature, to be used in an enable
directive. An experimental extension should use prefix of google_experimental_
Example:
enable google_experimental_f16;
Write down what the feature is supposed to mean. This informs the Tint implementation, and tells shader authors what has changed. Ideally, this will take the form of one of the following:
A PR against the WGSL spec.
A description of what the contents of that PR would be, committed as a document in this Tint repository.
File a tracking bug for adding the feature. Note: Should the Tint repo have a label for experimental features?
File a tracking bug for removing the feature or converting it to non-experimental.
Write a plan for removal of the experiment.