Emacs' approach is to provide services that offer users the ability to custom-create the functionality they need, rather than cramming new features into the tool itself. Similarly, scripts can configure Emacs to function as a news reader, email client, and so on. Other good examples of script- supporting applications include such Microsoft products as Microsoft Office and Microsoft Visual Studio. These applications provide rich services and support for user scripting. By providing hooks into an application, we can transform it into an environment.
User scripts use service provided by such an environment to write their applications.
In this article, we'll look at a way to infuse applications with scripting support. For that purpose, we'll first write a simple application without scripting support, then incorporate such support into it. We will also develop a framework for scripting support, which makes support for a new scripting language, or change to a language's interpreter, a simple task. First, let's develop a simple application designed without a scripting extension in mind. In this section, you will find no reference to scripting support.