Microsoft Visual Studio is an integrated development environment (IDE) produced by Microsoft. It has a code editor that supports syntax highlighting and code completion using IntelliSense for not only variables, functions and methods but also language constructs like loops and queries; includes a debugger that works both as a source-level debugger and as a machine-level debugger; includes a host of visual designers to aid in the development of applications and other tools. Visual Studio permits developers to write extensions for Visual Studio to expand its capabilities. These extensions are linked to Visual Studio and extend its functionality. Extensions come in the form of macros, add-ins, and packages. Macros represent repeatable tasks and actions that developers can write programmatically for saving, replaying, and distributing; add-ins gives access to the Visual Studio object model and can interact with the IDE tools; and packages can create designers and other tools, as well as integrate other programming languages.