In other words, back pressure is an integral part of this model in order to allow the queues which mediate between threads to be bounded.
The intention of the specification is to allow the creation of many conforming implementations, which by virtue of abiding by the rules will be able to interoperate smoothly, preserving the mentioned benefits and characteristics across the whole processing graph of a stream application.
[2] End-user DSLs or protocol binding APIs have purposefully been left out of the scope to encourage and enable different implementations that potentially use different programming languages to stay as true as possible to the idioms of their platform.
[10] On April 30, 2015 version 1.0.0 of Reactive Streams for the JVM was released,[5][6][11] including Java API,[12] a textual specification,[13] a TCK and implementation examples.
The specification as well as interfaces remained fully backwards compatible with the 1.0.0 version, however aimed to streamline the adoption for future implementors as well as align with some additional requirements set by the OpenJDK.