ну сравним
sleepRandom = !(time, callback)->
<- setTimeout _, time * 1000
callback Math.random! * 1000 .|. 0
log \start
a <- sleepRandom 5
log 'sleep 5 sec, a = ' + a
b <- sleepRandom 6
log 'sleep 6 sec, b = ' + b
c <- sleepRandom 7
log 'sleep 7 sec, c = ' + c
log 'a + b + c = ' + (a + b + c)
и
sleepRandom = (time, callback)->
await setTimeout defer(), time * 1000
callback Math.random() * 1000 | 0
console.log 'start'
await sleepRandom 5, defer a
console.log 'sleep 5 sec, a = ' + a
await sleepRandom 6, defer b
console.log 'sleep 6 sec, b = ' + b
await sleepRandom 7, defer c
console.log 'sleep 7 sec, c = ' + c
console.log 'a + b + c = ' + (a + b + c)
А что вы смотрите результат компиляции на node.js ?
я вот нет, и дебага через @map source + ide хватает за глаза!
А код должен быть читаем для программиста а не машины
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.