C++ is all very well for applications that have to be fast, deliverable and, above all, written in C++. But what about casual programmers, prototypers, and those who want something a little more high-level?
Naturally, wxWindows, in collaboration with NASA, can supply the answer---wxCLIPS. CLIPS is NASA's expert system shell consisting of a LISP-like functional language, a rule interpreter, an object system, and the crucial characteristic of portability. It's implemented as a C library, can be embedded in any C or C++ application with no royalty payments, and is totally free.
As a language, CLIPS has several advantages over C++. It requires no explicit memory management, since it has garbage collection; it's interpreted, so no long compilations; and it has a rule interpreter, useful for knowledge based system projects, or just occasional pattern matching and searching. So it's useful for prototyping applications, or for non-C++ programmers. From the C++ developer's point of view, it makes a great embedded language for user-extensible applications.
wxCLIPS adds a library of GUI CLIPS functions to CLIPS; the intention is to cover all of wxWindows functionality eventually, though presently, only the most important functionality is covered. wxCLIPS comes as both a library and an executable, so it can be used straightaway to develop GUI programs, and it can also be linked into applications to provide a built-in language. Within AIAI, wxCLIPS has proven popular amongst students and professionals for rapid-prototyping and customization.
See the wxCLIPS manual and NASA's CLIPS manuals for further details.