LED is a dialog-specification language whose purpose is not to be a complete programming language, but rather to make dialog specification simpler than in C.

In LED, attributes and expressions follow this form:

name = element[attribute1=value1,attribute2=value2,...](expression)

The element must not contain the “iup” prefix. Attribute values are always interpreted as strings, but they need to be in quotes (“…” or '...') only when they include spaces.

Expressions are mandatory and contain parameters for creating the element. Each element constructor has a different set of parameters, see each element documentation.

In LED there is no distinction between upper and lower case, except for attribute values.

To insert line breaks in string values use '\n'. The LED file itself can contain line breaks in DOS or Windows format, not in Mac format.

Comments start with the '#' character and goes all the way until the end of the line.

Also there is no NULL definition, but containers can be empty (since 3.28).

The IupLoad function can parse a text file and create the IUP elements defined in it. Naturally, the same file cannot be loaded more than once, because the elements would be created again. The file parse does not map the elements to the native system, but it does create those elements.

LED files can be dynamically loaded by the application and must be packaged together with the application’s executable. However, this often becomes an inconvenience. To deal with it, there is the LEDC compiler that creates a C module from the LED contents.

To simply view a LED file objects use the LED Viewer application called IupView, in the applications included in the distribution. Pre-compiled binaries are available at the Download.