Luiz Felipe Frazão Gonçalves (2018-04-12T16:07:02.000Z)
luizfelipefrazaogoncalves at gmail.com (2018-04-12T16:08:53.040Z)
_One new proposal for EcmaScript._ # `Promised Functions` Like `async/await`, the promised functions would be preceded by a keyword. In the case, `promised`, it would change the default behavior of the function, making it behave as a promise. I will use as an example a classic `sleep` function: ```javascript function sleep(forHowLong) { return new Promise((resolve, reject) => { setTimeout(function() { resolve(); /** * For reject: * * reject(Error('Some error')); */ }, forHowLong); }); } ``` I think to avoid the huge amount of callbacks, there should be a syntax similar to this: ```javascript promised function sleep(forHowLong) { setTimeout(function() { this.resolve(); // could even create a keyword like "resolve" /** * For reject: * * this.reject(Error('Some error')); */ }, forHowLong); } ``` Note that the hypothetical keyword "promised" before the function statement makes it act as a promise. Just a crazy idea I had. :)