It was created as an alternative to the use of a meta compiler such as found in the signals and slots implementation in Qt.
libsigc++ originated as part of the gtkmm project in 1997 and later was rewritten to be a standalone library.
The addition of this strict compile time checking required the addition of template typecasting adapters which convert the functor callback profile to match the required signal pattern.
libsigc++ was a natural expansion of the C++ standard library functors to the tracking of objects necessary to implement the observer pattern.
libsigc++ is released as free software under the GNU Lesser General Public License (LGPL).