So far we have seen how we can improve the lua language by binding our C++ functions to it. However sometimes we will prefer to introduce sources of flexibility to C++. By "reverse binding" (as I call it) C/C++ can gain the ability to call lua functions and access lua variables.