Candle Overview

Version : Candle 0.10
Published date : Nov 12, 2011

1. The Candle Language

Candle (Common ApplicatioN Development LanguagE) is designed to be a new general-purpose scripting language capable of developing both desktop and Internet applications.

Besides the common features found in many scripting languages, like cross-platform, interpreted execution, auto garbage collection, dynamic typed, built-in list and map support, Candle also supports some unique features that are not common in today's general-purpose programming languages:
Currently, the default character encoding (also the only supported encoding) of Candle is UTF8.

There are two types of documents in Candle - Candle Markup and Candle Script:
In the opening signature, '1.0' is the version of the Candle language. As the language evolves, more version numbers would be expected to appear in the opening signature. Only whitespace characters are allowed to precede the opening signature.

As Candle is closely based on some XML technologies, including XPath, XSLT and XQuery, it will be easier for you to understand Candle, if you already have knowledge of these languages.

Two blog articles may also help you understand the design rationales behind Candle: Blog - Why I Invented Candle (I) and Blog - Why I Invented Candle (II).

2. The Candle App Platform

The Candle App Platform is the runtime environment to support the execution of Candle scripts on various operations systems. It is being developed in C/C++. Currently, Candle runs on Windows (2000 and above) and Linux (only tested with Ubuntu, but as Candle has very few dependencies, it should be easy to port to other Linux and UNIX distros).

Below is the architecture diagram of Candle App Platform:

Architecture Diagram of Candle Runtime

Candle Runtime is very lightweight. With current beta release, the entire zipped binary package is only 2.1M on Windows and 1.2M on Linux. So besides running as standalone application, it can also be used as embedded scripting language in large applications.

The entire Candle Runtime implementation is open-sourced at SourceForge, so there's nothing that hinders you from porting it, customizing it and patching it. Workspace files for Microsoft Visual C++ (Express) and CodeLite are provided.

3. Candle Reference Documents

Here's a quick overview of the list of more detailed reference documents in Candle:
If you encountered any problem with the program or the documentation, you can always email me at