 For Korat, third-party code implementing these structures with their various operations is publicly available, making it possible to simply borrow existing implementations.
with CLP, not only is code unavailable, existing imperative code is so different semantically that it cannot be translated directly.