In order to move faster and get better feedback, we implement and iterate on language changes before the full official specification has been written. Still, the implementers need something to go on.
For that, the language team writes feature specifications. These are intended to be precise enough for a good faith implementer to correctly understand the syntax and semantics of the language, but when the contents of a feature specification is integrated into the language specification we expect the extra processing to give rise to additional clarifications and corrections, which means that a feature specification is expected to be nearly as complete and correct as the language specification.
This directory contains older feature specifications, newer ones can be found in, respectively should be submitted to, the language repository here.
The status of every feature specification in this directory is that it is background material, and the contents has been integrated into the language specification. Consequently, these feature specifications can only be used as a source of informal background information. Precise rules about the features should be looked up in the language specification.