Step through the intermediate program code, executing each instruction. Some scripting languages convert the program text into the intermediate format as a preprocessing step. Some scripting languages allow your C program to maintain control of the main loop and call the scripting language to evaluate new code. This type of language is called an embeddable language . These are usually called extension languages .
Many embeddable languages are also extensible.
Recall that scripting languages allow the user to define new data types at runtime. In order to get information about the object, the C program must call a procedure to ask the scripting language's environment about the object in question. This layer of indirection is what makes runtime extensibility possible. For example, in SCM, all Scheme objects are represented in C as variables of type SCM . These represent all objects in Scheme, including numbers, strings, and cons cells.