Xic contains a just-in-time compiler for a powerful built-in scripting language. The native language is C-like, though a Lisp-like variant is also supported. There is also interoperability with the popular tcl/tk scripting language.
A lengthly and expanding set of interface functions allow Xic to be controlled by the scripts, and a very efficient computational geometry engine allows database manipulation.
Xic even supports a server mode, whereby Xic does not use graphics, and instead becomes a ``daemon'', listening for job requests. Other applications can use the server for geometrical and other manipulations. A similar batch mode, where Xic again does not use graphics but instead executes a script and exits, is also available.
The user's scripts can appear as command buttons in the User Menu, allowing custom operations to be easily accessible in normal operation.
The script language is used elsewhere, for example in user-defined design rule tests, and in executable labels. An executable label is a text object in a design that when clicked-on will perform some operation. Scripts are also used in template (parameterized) cells, which enable on-the-fly generation of subcells based on an arbitrary set of parameters.