CppInterOp is a C++ Interoperability library, which leverages ROOT’s Cling and LLVM’s Clang-REPL C++ interpreters, to provide a minimalist and backward-compatible API facilitating seamless language interoperability. This provides downstream interactive C++ tools with the compiler as a service by embedding Clang and LLVM as libraries in their codebases. By enabling dynamic Python interactions with static C++ codebases, CppInterOp enhances computational efficiency and rapid development in high-energy physics. The library offers primitives enabling cppyy, an automatic, run-time, Python-C++ bindings generator. The CppInterOp library provides a minimalist approach for other languages to bridge C++ entities (variables, classes, etc.). This enables interoperability with C++ code, bringing the speed and efficiency of C++ to simpler, more interactive languages like Python.
Implement CppInterOp API exposing memory, ownership and thread safety information
Interactive Differential Debugging - Intelligent Auto-Stepping and Tab-Completion