CHR (Constraint Handling Rules) is a popular high-level rule-based language. It was originally designed for implementing constraint solvers, but it has found its way into applications far beyond constraint solving. Two compilers for CHR run on B-Prolog: the Leuven compiler and a compiler, called chr2ar, which translates CHR into action rules. The former compiler has been around for some time, and the latter compiler is a preliminary one. It has been shown that action rules can serve as an efficient alternative intermediate language for compiling CHR.