Why doesn't Lua's C API allow direct pointer access to Lua objects like Python does?

Why doesn't Lua's C API allow direct pointer access to Lua objects like Python does?

Compare this to Python’s API.

Lua’s C API has a safe by design approach to it’s C API. A C or C++ programmer is never allowed to get effectively get a loaded shotgun. By using a ‘virtual stack’ to interact with the Lua runtime engine, the programmer is never allowed to shoot themselves in the foot (or any other part of their anatomy).