-
Notifications
You must be signed in to change notification settings - Fork 745
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Reporter didn't report" error isn't catchable #3327
Comments
Error catching isn't part of Snap's functionality, only throwing errors. We don't (yet) have first class exceptions, not even first class processes/threads. |
Aw, c'mon, we advertise a library for it. I don't recall you objecting to that one, although I may be forgetting. Anyway, it's just this one error that we can't catch. That ought to be fixable. PS We don't have first class processes, exactly, but we do have first class continuations, which sort of comes to the same thing. |
Why do you need to catch it, could you explain? You're not using metaprogramming to ad-hoc define new reporters, or are you? |
Actually one of qw23's goals is to avoid metaprogramming. The goal is to build something like mapreduce's mapper function, which can return multiple values, including the case of no values, in which case that input is dropped from the result.
If you want more context, you can start here: https://forum.snap.berkeley.edu/t/logic-programming-library-development-log/13828/108 starting in the middle of that post with the heading "Multiplicate stream items." But it's a pretty long thread, even just the part leading up to this issue. |
(By the way, if I leave out the MOVE block, then BAD REPORTER reports 0 instead of not reporting. I think that's a bug, too, but less important.)
The reason is this, in threads.js:
which I think should be
... but when I try that, it causes an infinite loop, so I'll let someone else debug it. :)
This sounds like a minor problem, except that it's standing in the way of the logic programming library development. :(
The text was updated successfully, but these errors were encountered: