ThingLang
Jump to navigation
Jump to search
ThingLang
ThingLang is an esoteric programming language created by User:Rasa8877 in 2025. It is designed to be playful and readable, using English-like keywords for variables, printing, functions, loops, and comments.
Overview
ThingLang uses a minimal set of keywords and commands to perform operations. It emphasizes clarity with natural-language-like syntax while remaining fully functional for variables, loops, and functions.
Commands / Keywords
- `THIS <name> IS <value>` — Assign a value (number or string) to a variable.
- `THINGSAY <value>` — Print the value of a variable or a string literal.
- `DOTHING <name> GONNA ... GONNAEND` — Define a function named `<name>`.
- `<name>` — Call a previously defined function.
- `NOTAGAIN ... TIMES IS <n>` — Loop over the block `<n>` times.
- `!` — Comment; anything after `!` on a line is ignored.
Example Program
! Example ThingLang program THIS x IS 5 THINGSAY x THINGSAY "Hello ThingLang!" DOTHING greet GONNA THINGSAY "Hello from a function!" GONNAEND greet NOTAGAIN THINGSAY "Looping..." TIMES IS 3
Tips & Tricks
- **Comments anywhere** — You can place `!` comments at the start or end of any line.
- **Nested loops** — Loops can appear inside functions or inside other loops.
- **Function calls** — Functions can call other functions.
- **Variables** — You can reuse variable names; assignment overwrites previous values.
Example with nested loops and functions:
THIS i IS 1 DOTHING countdown GONNA NOTAGAIN THINGSAY i THIS i IS i + 1 TIMES IS 5 GONNAEND countdown
Interpreter
The official interpreter is written in Python and reads `.tl` files. It supports all ThingLang syntax, including variables, printing, functions, loops, and comments.
Example usage:
python thinglang.py example.tl
References / Downloads
- Interpreter: thinglang.py