Skip to main content

🌟 Tamizhi (தமிழி)

A Native Compiled Programming Language with Tamil Syntax

License: MIT Platform Backend Community Version

Write code in Tamil. Compile to native machine code. Run at C speed.


📖 About

Tamizhi is a compiled programming language that combines the elegance of the Tamil language with the raw performance of native machine code. Unlike interpreted languages, Tamizhi compiles directly to binary via an LLVM backend — delivering performance comparable to C, while letting developers write logic in Tamil syntax.

தமிழிலேயே கோட் எழுதி, மெஷின் ஸ்பீட்-ல இயக்கு.


✨ Features

Feature Description
🔥 LLVM Backend Optimized native code generation for modern CPUs
C-Level Performance Significantly faster than Python and other interpreted languages
🛠️ Native CLI Dedicated tamizhi command-line tool written in C
🌐 Tamil Syntax Write logic using Tamil keywords (அச்சிடு, Num, etc.)
🐧 Linux Native Optimized for Linux (Arch/Manjaro) and Android (Termux)

🚀 Getting Started

Prerequisites

Ensure the following compiler tools are installed on your system:

  • Arch Linux / Manjaro: sudo pacman -S clang llvm make
  • Ubuntu / Debian: sudo apt install clang llvm make -y
  • Android Termux: pkg install clang llvm make

Installation (The Global Automated Way)

You can install the Tamizhi Compiler globally on your system with a single command. It will automatically download, compile, and configure the global environment.

curl -fsSL https://raw.githubusercontent.com/Prabakaran202/Tamizhi/main/install.sh | bash

Alternatively, for local development:

git clone https://github.com/Prabakaran202/Tamizhi.git
cd Tamizhi
chmod +x install.sh
./install.sh

👨‍💻 Your First Tamizhi Program

Create a new file with .tz extension (e.g., vanakkam.tz):

fun main {
    Num அ = 100 ;
    Num ஆ = 200 ;
    Num இ = அ + ஆ ;

    print "கூட்டல் விடை:" ;
    print இ ;
}

Run it anywhere on your system:

tamizhi run vanakkam.tz

Output:

கூட்டல் விடை:
300

📁 Project Structure

Tamizhi/
├── src/                  # Lexer, Parser, and LLVM Code Generator (C source files)
├── include/              # Compiler Core Header files
├── examples/             # Sample Tamizhi advanced programs (.tz)
├── .vscode/              # Pre-configured global tasks for VS Code execution
├── install.sh            # Global one-click automated installer script
└── Makefile              # Automated Clang compilation pipelines

🗺️ Roadmap

  • LLVM Integration (Core Compiler Engine)
  • Native C CLI (tamizhi run)
  • Global Universal Installer Script (install.sh)
  • Precedence Engine Matrix (AST Tree Walker)
  • Conditions — if / else Block Parsing
  • Loops — for Iteration Engines
  • Conditionals — எனின்தான் / இல்லையெனில் (Tamil Syntax Mapping)
  • Return Infrastructure (return values from functions)
  • Floating Point Support (Float / Decimal operations)
  • Tamizhi Package Manager (TPM)

🤝 Contributing

Tamizhi is an open-source project under the Backend Developer Hub (BDH) community. Contributions are highly welcome!

  • 🐛 Found a bug or syntax error? Open an Issue
  • 💡 Have a cool core feature idea? Submit a Pull Request
  • ⭐ Like the concept? Give this repository a star!

📊 Benchmarks

Metric Result
🔁 Loop Iterations 1,000,000
⏱️ Execution Time 0.24s (AOT Native Compilation)
⚙️ CPU Usage 64%
📱 Device Android (Termux) — aarch64 / Linux x86_64
🔧 Backend LLVM Native Toolchain

📜 License

This project is licensed under the MIT License.


Developed with ❤️ by Prabakaran · Backend Developer Hub

தமிழுக்கும் அமுதென்று பேர் — அந்தத் தமிழ் இன்பத் தமிழ் எங்கள் உயிருக்கு நேர்!

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tamizhi-2.1.0.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tamizhi-2.1.0-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file tamizhi-2.1.0.tar.gz.

File metadata

  • Download URL: tamizhi-2.1.0.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tamizhi-2.1.0.tar.gz
Algorithm Hash digest
SHA256 caa5c1fe76fab3acc546349f4fdacd3a86acc4417c60cb2bc5790886654f950b
MD5 611139370990692fbe693e2305068a8e
BLAKE2b-256 cf1f30b38a6caf7717260fa81376c1d3fab926574fd3444ec16887f8ca952a03

See more details on using hashes here.

Provenance

The following attestation bundles were made for tamizhi-2.1.0.tar.gz:

Publisher: publish.yml on BackendDeveloperHub/Tamizhi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tamizhi-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: tamizhi-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tamizhi-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc6b4824ae5829a97e8b064216d05e8aef8c9291ec858e11696d90cc00847346
MD5 817c86f6c24461dbee7d3c7b4e859977
BLAKE2b-256 077c5ea100e1c8eda880606f59f2857a75d4bdd062ed0f6f1a30589a17259f41

See more details on using hashes here.

Provenance

The following attestation bundles were made for tamizhi-2.1.0-py3-none-any.whl:

Publisher: publish.yml on BackendDeveloperHub/Tamizhi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2.1.7

2 files

2.1.6

2 files

2.1.4

2 files

2.1.3

2 files

2.1.1

2 files

This release

2.1.0 This release

2 files

2.0.9

2 files

2.0.8

2 files

2.0.7

2 files

2.0.6

2 files

2.0.5

2 files

2.0.4

2 files

2.0.3

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page