Reference: Brownston, L. BBK Manual. Knowledge Systems Laboratory, September, 1995.
Abstract: BBK, a blackboard "Kernel," is a lean version of BB1 that is implemented in C++ as a library. BBK was designed to mirror the syntax and structure of BB1 Version 3 as much as possible given the change of implemenation language. It does, however, exploit several features of this language (such as const parameters and private class members) to insure security and extensibility. An important innovation is the typing of blackboard objects, which enforces restrictions on which attributes and links an object may take. BBK does not use features of C++ that are not widely available, such as templates and exceptions. It does, however, depend on the libg++ library in its extensive use of the String, SLList and SplaySet classes. It also uses the BSD socket interface to enable communication with external processes.
Full paper available as ps.