The term "promises" has been so overloaded with so much, simply saying it
is not going to help anyone achieve anything.

PS: I'm currently quite happy with this: https://github.com/jmar777/suspend

On Tue, May 5, 2015 at 7:22 AM, Adam Reynolds <[email protected]> wrote:

> This has been solved. It's called promises
> On 4 May 2015 22:02, "John Wathen" <[email protected]> wrote:
>
>> Have you taken a look at https://www.npmjs.com/package/async? You still
>> have a callback at the end but it can help to clean up a lot of the deep
>> nesting.
>>
>> async.series([a, b], function(err, results) {
>>   console.log(results); // an array holding the results of a and b
>> });
>>
>> On Monday, May 4, 2015 at 8:12:13 AM UTC-7, ami wrote:
>>>
>>> Hello everyone.
>>>
>>> I thought about a solution how to solve the callback hell.
>>>
>>> var a=asyncFunction1(parameters,function(err,param1){
>>>   var b=asyncFunction2(parameters,function(err,param2){
>>>      if (err) console.log(err)
>>>      console.log('here')
>>>   }
>>>
>>> I want to create new syntax for calling to async functions.
>>> The new syntax will be as extension to JavaScript (like TypeScript, or
>>> CoffeScript but minimalist change to the JS code).
>>> It will be compiled just before Node.jS running the JavaScript.
>>>
>>> I have created new GitHub repository. And I want to start developing it.
>>> (https://github.com/AminaG/HeavenScript)
>>> I am searching for other developers, who want to join me in this project.
>>> I need help in 2 things:
>>> 1. IDE's intellisense. Because I am changing little bit the JavaScript,
>>> all IDE's will create warnings. So I need to create new definition files
>>> for them (IntelliJ, SublimeText, VS, etc;) Who here know how to do it?
>>> 2. Help me with English. My development skills, are much better than
>>> English. So for explanations, and create README file, I need help.
>>>
>>> //******************************
>>> the new syntax:
>>>
>>> a=@asyncFunction1(param1)
>>> err,b=@asyncFunction2(param2)
>>> console.log('now we can access to a,b')
>>>
>>> it will be converted to
>>>
>>> asyncFunction1(param1,function(err,a){
>>>   if(err) throw err;
>>>   asyncFunction2(param2,function(err,b){
>>>     console.log('now we can access to param1, param2')
>>>   })
>>> })
>>>
>>>
>>> //******************************
>>> One More Example:
>>>
>>> See how much it is easier and readable to write it in HeavenScript
>>>
>>> function theBlock(){
>>>   a=@asyncFunction1(param1)
>>>   err,b=@asyncFunction2(param2)
>>>   console.log('Now we can access a,b,err')
>>>   if (err) {console.log('error in function2'),
>>>   err,c=@asyncFunction3(param3) {
>>>       console.log('Now we can access a,b,c')
>>>   }
>>>   d=@asyncFunction4(param4)
>>>   console.log('Now we can access only to a,b. c is in another scope')
>>> }
>>>
>>> (304 characters)
>>>
>>> It will be converted to:
>>>
>>> asyncFunction1(param1,function(err,a){
>>>   if(err) throw err
>>>   asyncFunction2(param2,function(err,b){
>>>     console.log('Now we can access a,b,err')
>>>     if (err) console.log('error in function2')
>>>       asyncFunction3(param3,function(err,c){
>>>          console.log('Now we can access a,b,c')
>>>       })
>>>       d=asyncFunction4(param4,function(err,d){
>>>           if(err) throw err
>>>            console.log('Now we can access only to a,b. c is in another
>>> scope')
>>>      })
>>>     })
>>> })
>>>
>>>
>>> (391 characters)
>>>
>>> What do you think?
>>>
>>  --
>> Job board: http://jobs.nodejs.org/
>> New group rules:
>> https://gist.github.com/othiym23/9886289#file-moderation-policy-md
>> Old group rules:
>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "nodejs" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/nodejs/a73509d3-9f00-42f2-a7dd-7c5875e86a65%40googlegroups.com
>> <https://groups.google.com/d/msgid/nodejs/a73509d3-9f00-42f2-a7dd-7c5875e86a65%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>  --
> Job board: http://jobs.nodejs.org/
> New group rules:
> https://gist.github.com/othiym23/9886289#file-moderation-policy-md
> Old group rules:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> ---
> You received this message because you are subscribed to the Google Groups
> "nodejs" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/nodejs/CAFszCkPuDdc%3DZ9_7A3cMWfRnkv%2BAAKp32dPQgfyrBLWwVo%2BbaQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/nodejs/CAFszCkPuDdc%3DZ9_7A3cMWfRnkv%2BAAKp32dPQgfyrBLWwVo%2BbaQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
Job board: http://jobs.nodejs.org/
New group rules: 
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/CABg07fu-YrBp1D5Hm8jXFud1OOz%3DTFt%2Bf_5-NPnDg4hBWRe4aQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to