LiteScript is a dynamic procedural fixed-form line based interpreted toy programming language initially built just for turing completeness that has expanded to provide a wide variety of functionalities suitable for executing small and simple scripts and prototypes.
Its syntax is based off a high level dynamic scripting language like Python while adhering to the philosophy and design principals of lower level languages like assembly and the C programming language, to create a scripting paradigm that sticks to a style closely resembling to how a computer actually runs under the hood.
LiteScript also comes with integrated modules whose capabilities and functionalities include but are not limited to:
- Concurrent and parallel execution via multithreading.
- Systems programming like process control and heap management.
- Filesystem manipulation and interaction.
- A networking library able to perform and handle simple HTTP requests and responses.
- A very simple GUI library to create simple windows and forms.
- Database connections and interactions with transactions via SQLite and PostgreSQL.
In the following reference we try to reference all the relevant core functionalities and utilities that the language provides, so that you, the programmer, can utilize them to their fullest extent in your scripts.
Philosophy
Since LiteScript is an open source project, we want to make the language and its runtime accessible to everybody, taking a firm stance against corporate proprietary software, therefore, the interpreter/runtime is designed to run exclusively on the Linux kernel, allowing LiteScript to be executed in any Linux distribution (Ubuntu, Arch, Kali, Mint, etc.).
Despite LiteScript's primary purpose of being a dynamic scripting language it borrows the philosophy and design principals of assembly, therefore its style reflects closely to how a computer executes programs, while only providing the abstractions we deem necessary for dynamic scripting. By adhering to this philosophy, LiteScript will only support imperative and procedural programming, since at a low level this is what gets compiled/assembled to, and will never support Object-Oriented Programming. Everything that requires the program to handle mutable states and custom objects will be handled implicitly by the interpreter's runtime.
Interpreter
LiteScript is executed with its own interpreter, called 'Lite'. To install it, just follow the installation steps found in the LiteScript repository.
Once installed correctly into the binaries of your Linux machine, just run it with the following command:
lite [FILENAME] [ARGS...]Where the FILENAME is a file ending with the .lts extension containing your LiteScript program, and ARGS... are any additional arguments you want to run with your program, just like a C or C++ program.
You can also check the version and release date of your LiteScript interpreter by running lite with the following flag:
lite --version