Hacker News new | ask | show | jobs
by IshKebab 1956 days ago
> There’s always a stack trace.

I think you misunderstood. Of course there's always a stack trace; you're still executing code. But with message buses and magic reactivity systems your stack trace always just goes to `mainEventLoop()` or `processEvents()` or whatever.

It doesn't go to the thing that actually caused the change as it would if you used direct function calls. I'm not saying it's a deal breaker, it's just a notable downside of those architectures.

1 comments

As GP said, you have to compensate with some form of logging/tracing. At the very least, if you assign an ID to every event, then to debug an issue you can start logging sends and receives, and work out the relationship.
Yes you can do that but it's still worse than a proper stack trace that goes back to where the message is generated.