Initially, formatting these forms was straightforward. However, users soon expressed the need to add conditions and perform actions directly within the text. This led me to realize the necessity of developing a Domain-Specific Language (DSL).
I dedicated significant time to designing a syntax that would be user-friendly and simple, yet robust enough to serve the primary purpose of the system: scripting network equipment. In this syntax, variables start with @ and functions with :, resulting in constructs like @variable and :function(). This marked the birth of Bennu, the initial name of the language.
Despite extensive development, the project was eventually shelved, and the solution remained unused. Later, I decided to revive Bennu with a new name, a cleaner parser, and enhanced capabilities. Thus, ILLEX was born—a name inspired by Ilex, the scientific name for my favorite tea, Mate. The name also reflects its purpose: Inline Language for Logic and Expressions.
Now revitalized as ILLEX, the language boasts a broader range of functions, is available as a package on PyPI, supports extensions to enhance its capabilities, allows function chaining, and much more!
I acknowledge that building a language using Python as its engine might seem unconventional. However, my current goal is to make it viable and appealing to the world. I believe this idea holds great promise and sincerely hope for your support in guiding the direction of this language, which, so far, I see primarily serving as a template language.
(For those wondering why I didn't use Jinja in the original work project, it's because I find Jinja less suitable for non-technical users. Simpler syntaxes are more approachable. ILLEX doesn't even require quotes!)
For more information, please refer to the ILLEX README and the official documentation.