A model for Reflection in Rule-Based Languages
Production systems are used to detect patterns in large sets of facts. These patterns are described by rules.
Rules frequently need to be modified to adapt to changing requirements, for instance to update the security policies encoded in the rules. The production system however needs to remain operational throughout these updates. Current systems provide no reflective language constructs to inspect rules and/or change them. Instead, updates are achieved by unloading the current ruleset and loading an updated set. This is not only a costly operation which renders the system unresponsive while the new ruleset is being loaded, it also necessitates implementing the update-logic elsewhere.
In this position-paper we introduce a meta-level to RETE; a well established pattern-matching algorithm which is used in many production systems. This meta-level embodies a reification of all the rules in the ruleset, enabling us to provide language support for reflective rules. The envisioned language constructs make it possible to write rules that (a) leverage introspection to reason about the state of business rules, and (b) adapt to changing requirements by changing business rules at runtime.
Paper (meta16-final14.pdf) | 313KiB |
Sun 30 Oct Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 12:10: Run-time ReflectionMETA at Matterhorn 3 Chair(s): Stefan MarrJohannes Kepler University Linz | |||
10:30 - 11:00 Talk | A model for Reflection in Rule-Based Languages META Simon Van de WaterVUB, Thierry RenauxVrije Universiteit Brussel, Wolfgang De MeuterVrije Universiteit Brussel, Belgium Media Attached File Attached | ||
11:00 - 11:30 Talk | Instance Migration in Dynamic Software Update META Pablo TesoneInria Lille–Nord Europe, France Mines Douai, IA, Univ. Lille, France, Guillermo PolitoInria, Luc FabresseMines Douai, Noury BouraqadiMines Douai, Stéphane Ducasse INRIA Lille Media Attached File Attached | ||
11:30 - 12:00 Talk | AST Specialisation and Partial Evaluation for Easy High-Performance Metaprogramming META Chris SeatonOracle Labs Pre-print Media Attached File Attached |