The Community for Technology Leaders
Green Image
<p><b>Abstract</b>—Object-oriented languages and rule-based languages offer two distinct and useful programming abstractions. However, previous attempts to integrate data-driven rules into object-oriented languages have typically achieved an uneasy union at best. R++ is a new, closer integration of the rule-based and object-oriented paradigms that extends C++ with a single programming construct, the <it>path-based</it> rule, as a new kind of class member. Path-based rules—data-driven rules that are restricted to following pointers between objects—are like automatic methods that are triggered by changes to the objects they monitor. Path-based rules provide a useful level of abstraction that encourages a more declarative style of programming and are valuable in object-oriented designs as a means of modeling dynamic collections of interdependent objects. Unlike more traditional pattern-matching rules, path-based rules are not at odds with the object-oriented paradigm and offer performance advantages for many natural applications.</p>
Object-oriented models and systems, rule-based processing and systems, C++, knowledge-based systems, expert systems
D. Litman, P.F. Patel-Schneider, A. Mishra, J. Crawford, D. Dvorak, "R++: Adding Path-Based Rules to C++", IEEE Transactions on Knowledge & Data Engineering, vol. 14, no. , pp. 638-658, May/June 2002, doi:10.1109/TKDE.2002.1000347
108 ms
(Ver 3.1 (10032016))