N>Если бы это было так то слово go было бы не нужно. Точно так же можно сказать, что в C# нет никаких async функций, все синхронны просто возвращают разное, и это будет правдой, но словоблудием.
Это как раз и будет реальность, данная нам в call stack'ах. Именно поэтому работать с асинхронщиной в изначально не предназначенных для concurrency языках столь неудобно.