EasyLang — Frequently Asked Questions (FAQ)¶
This FAQ page answers common questions about EasyLang, the CLI, ELPM, modules, errors, and project structure.
If you think something is missing, feel free to contribute or open an issue!
General Questions¶
What is EasyLang?¶
EasyLang is an English-like scripting language designed to be simple, readable, and beginner-friendly.
It reads like plain English:
we let x = 10
if x greater 5 then [
so print "Hello!"
]
It is built in Python and wrapped with a powerful interpreter that supports modules, Python interop, and a CLI.
What can EasyLang be used for?¶
- Learning programming
- Writing small automation scripts
- Teaching coding to beginners
- Quick utilities
- Testing algorithms
- Interacting with Python libraries (requests, pillow, numpy, etc.)
Is EasyLang compiled or interpreted?¶
It is interpreted.
Your code is executed directly by easy_lang.py.
Installation & Setup¶
How do I install EasyLang?¶
You have three options:
-
Using Git git clone https://github.com/greenbugx/EasyLang
-
Windows .exe Installer (recommended) Download from Releases → EasyLang Installer (.exe)
-
Portable ZIP Extract → run el.exe or python el.py.
How do I run an EasyLang file?¶
el myscript.elang
Or:
python el.py myscript.elang
How do I start the REPL?¶
el --repl
Language & Syntax¶
Does EasyLang use semicolons or braces?¶
No. Blocks use brackets:
[
statements...
]
Is indentation required?¶
No. Indentation is optional and ignored.
How do I define a variable?¶
we let x = 10
Does EasyLang support functions?¶
Yes:
define add(a, b): do [
return a plus b
]
Can I import modules?¶
Yes, both EasyLang and Python modules:
bring "math.elangh" as math
bring requests as req
Modules & Python Interop¶
Can I use Python packages inside EasyLang?
Yes!
Example:
bring requests as req
we let r = req.get("https://httpbin.org/get")
How do I install Python packages?¶
Use ELPM:
elpm --install requests
Does EasyLang have its own standard library?¶
Yes — built-in modules like:
mathstrings- list utilities
- dictionary utilities
ELPM — EasyLang Package Manager¶
What is ELPM?¶
A wrapper around pip with:
- clean output
- progress bars
- beginner-friendly error messages
How do I install a package?¶
elpm --install <name>
How do I list installed packages?¶
elpm --list
Can I remove a package?¶
elpm --uninstall <name>
Can I freeze dependencies?¶
Yes:
elpm --freeze
Error Handling¶
Why do I see Undefined variable?¶
You used a variable before defining it:
so print x $ error
we let x = 10
Why is string plus number an error?¶
EasyLang does not auto-convert types:
RuntimeError: Unsupported operand types for plus: string and number
Use:
"hello " plus str(10)
Why is my .elangh module not loading?¶
Possible reasons:
- File not found
- Missing alias
- Syntax error inside module
- Wrong path
Correct usage:
bring "math.elangh" as math
Why does EasyLang crash on Python imports?¶
Cause:
- Python module not installed
Solution:
elpm --install <module>
CLI & Commands¶
How do I view tokens?¶
el --tokens file.elang
How do I view the AST?¶
el --ast file.elang
How do I view interpreter version?¶
el --version
Project Structure¶
What files should my EasyLang project include?¶
Typical:
main.elang
math.elangh
modules/
docs/
requirements.txt
Advanced¶
Can I use EasyLang inside Python?¶
Yes — by importing:
from easy_lang import Interpreter
Will EasyLang support classes?¶
Planned for future release.
Does EasyLang have a compiler?¶
Not yet. Interpreter-only for now.
Community & Help¶
Where can I report bugs?¶
GitHub Issues EasyLang repository
Can I contribute?¶
Yes — contributions are welcome!
Need More Help?¶
Join the community or check the full documentation for:
- Syntax
- Standard Library
- Error System
- Modules
- ELPM
- CLI