The sandbox

The sandbox is quite similar to an add-on: it is automatically loaded at program start-up, and allows CoppeliaSim's functionality to be extended by user-written functionality or functions. In addition to that, the sandbox is extensively used in CoppeliaSim's commander plugin (read-eval-print loop), that adds a text input to the CoppeliaSim status bar, allowing entering and executing code on the fly, like in a terminal. It is persistent across all opened scenes, and is executed constantly, effectively running in the background. For that reason, it should only execute minimalistic code everytime called, since the whole application would otherwise slow down. The sandbox is called via system callback functions, and follows a precise execution order in relation to other script types.

The sandbox is loaded from python/ (and/or from lua/sandboxscript.lua) at start-up, can run threaded or non-threaded, and should be segmented into several system callback functions.