The formal review of the Synapse library by Emil Dotchevski starts
today, December 2, and is scheduled to continue through December 11.
This gives two full weekends and the week in between for the formal review.
Synapse is a signal programming library, similar to Boost Signals2 and
the signals-slots system in Qt. The main difference is that Synapse is
non-intrusive: the address of any object of any static type whatsoever
can be passed to synapse::emit to emit a signal. This makes it possible
to emit Synapse signals from objects of third-party types as well as
system objects (e.g. standard FILE pointers, HWNDs, etc.) or any other
object that can be converted to a pointer.
The library has been formatted to fit the Boost directory and namespace
structure. To get Synapse, clone
'https://github.com/zajo/boost-synapse.git' into a directory called
'synapse' under your boost/libs directory.
Reviews should be submitted to the developer list
([hidden email]), preferably with '[synapse]' in the subject. Or
if you don't wish to for some reason or are not subscribed to the
developer list you can send them privately to me at 'eldiener at
tropicsoft dot com'. If so, please let me know whether or not you'd like
your review to be forwarded to the list.
For your review you may wish to consider the following questions:
- What is your evaluation of the design?
- What is your evaluation of the implementation?
- What is your evaluation of the documentation?
- What is your evaluation of the potential usefulness of the
- Did you try to use the library? With what compiler? Did you
have any problems?
- How much effort did you put into your evaluation? A glance? A
quick reading? In-depth study?
- Are you knowledgeable about the problem domain?
And finally, every review should attempt to answer this question:
- Do you think the library should be accepted as a Boost library?
Be sure to say this explicitly so that your other comments don't obscure
your overall opinion.
Even if you do not wish to give a full review any technical comment
regarding the library is welcome as part of the review period and will
help me as the review manager decide whether the library should be
accepted as a Boost library. Any questions about the use of the library
are also welcome.
I encourage all programmers with an interest or knowledge of signal/slot
processing to be part of the review or discussion of the Synapse library
as your time permits.