core.async pitfalls