This document discusses tools for binding C/C++ code to Python. It begins with an overview of ctypes and CFFI for pure C bindings, and how CPython implements bindings internally. It then covers popular binding tools like SWIG, Cython, and Pybind11. For SWIG, a simple example is shown generating bindings for a C++ class. Later, a more detailed example is demonstrated using Pybind11 to bind the Minuit2 optimization library to Python.