I've been looking into Signal for the past week or so, and have a few questions about its (intended and conceptual) usage. Plus potentially a feature request if it's inline with what you guys want it to do:
I'm curious as to the rationale behind requiring that each signal (on a traditional JS object) must be predeclared, rather than something that can be defined as its used. For instance, if I connect() a signal to some object that doesn't have that particular signal defined - why not define it? Likewise, if I signal a given event, why not signal the event if there are connected handlers, otherwise just ignore it? I'm attempting to work on a sort of "widget" system that takes advantage of Signal, however this appears to be a signifigant roadblock as I have to work up a bit of a shim to detect whether a given signal is registered, or sacrifice the ability to define signals on the fly. Any chance we can get this ability? (it just seems to me that it's pretty pointless to enforce signal registration) Or, alternatively, what is the reasoning behind it and why should it be used like this? -Ian
