R++ is a rule-based programming language based on C++. The United States patent describes R++ as follows:
The R++ extension permits rules to be defined as members of C++ classes. The programming system of the invention takes the classes with rules defined using R++ and generates C++ code from them in which the machinery required for the rules is implemented completely as C++ data members and functions of the classes involved in the rules.[1]
R++ was developed by Bell Labs in the 1990s, but due to the Bell System divestiture that split the legal rights to the work developed at the Laboratories between AT&T and Lucent, did not see immediate commercial development while the two companies disputed ownership.[2]