A programming language with Tamil syntax
Project description
MozhiX (மொழிஎக்ஸ்) 🚀
MozhiX is a modern programming language with Tamil syntax, implemented in Python. It allows developers and students to write code using their native Tamil language, making programming more accessible and intuitive.
🌟 Features
- Tamil Native Syntax: Keywords like
எண்,செயல்பாடு, andஆனால்make code readable for Tamil speakers. - Complete Pipeline: Features a custom Lexer, Parser, and Interpreter.
- Unicode Support: Fully supports Tamil characters in identifiers and strings.
- Cross-Platform: Runs anywhere Python is installed.
- Tamil Error Messages: Understand exactly what went wrong in your own language.
⌨️ Syntax Preview
# ஒரு எளிய செயல்பாடு (A simple function)
செயல்பாடு வணக்கம்(பெயர்) {
அச்சிடு("வணக்கம் " + பெயர் + "!");
}
வணக்கம்("உலகமே");
# கட்டுப்பாடு மற்றும் சுழற்சி (Control and Loops)
எண் வயது = 18;
ஆனால் (வயது >= 18) {
அச்சிடு("நீங்கள் வாக்களிக்கலாம்");
}
🚀 Getting Started
Installation
You can install MozhiX locally using pip:
git clone https://github.com/yourusername/MozhiX.git
cd MozhiX
pip install .
Running Your First Program
Create a file named hello.mozhi:
அச்சிடு("வாழ்க தமிழ்!");
Run it using the mozhix command:
mozhix hello.mozhi
Interactive Shell (REPL)
Simply run mozhix without arguments to enter the interactive shell:
mozhix
mozhi> எண் அ = 10;
mozhi> அச்சிடு(அ + 5);
15
📚 Keywords Cheat Sheet
| Tamil | English | Description |
|---|---|---|
எண் |
int |
Integer type |
மெய் |
float |
Floating point type |
உரை |
string |
String type |
ஆனால் |
if |
If condition |
இல்லையெனில் |
else |
Else condition |
வரை |
while |
While loop |
செயல்பாடு |
def/func |
Function definition |
அச்சிடு |
print |
Output to console |
உள்ளீடு |
input |
Input from user |
திரும்பு |
return |
Return from function |
🛠️ Project Structure
lexer.py: Tokenizes Tamil source code.parser.py: Generates the Abstract Syntax Tree (AST).interpreter.py: Executes the AST nodes.main.py: CLI and REPL entry point.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📄 License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mozhix-1.0.0.tar.gz.
File metadata
- Download URL: mozhix-1.0.0.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
616e73046a7c673999c5fe3a51feda05c0c5ae2647448227ace5678d670b7667
|
|
| MD5 |
b732ec9aed507ee95dcf4f59e250b133
|
|
| BLAKE2b-256 |
08b94192fafe827e6820e7ea5605276d59bbc06b7d0a1596a96d209bac4252e4
|
File details
Details for the file mozhix-1.0.0-py3-none-any.whl.
File metadata
- Download URL: mozhix-1.0.0-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3f8194806e32f597cda5c9d1b9dbbf6252835681c9ef0703b2d017de776675e
|
|
| MD5 |
6ea540ed87d312c3c8e9f55c17537636
|
|
| BLAKE2b-256 |
6e42b6dcd47ed94c81471e277062cdcd35335972db8ae264ac4a64c853219120
|