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.0.7.tar.gz (4.7 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.0.7-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for tamizhi-2.0.7.tar.gz
Algorithm Hash digest
SHA256 fbefce4f45416f4546d85a4f878b926c4812bd5a2d8b54cc33b591778867392d
MD5 57abc8f117fb2fbe3afac44924b7b59f
BLAKE2b-256 2f8e37741b41aaea4857cccfb9b3cab781e3d010ac9a4eb233b439f0baaf4c89

See more details on using hashes here.

Provenance

The following attestation bundles were made for tamizhi-2.0.7.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.0.7-py3-none-any.whl.

File metadata

  • Download URL: tamizhi-2.0.7-py3-none-any.whl
  • Upload date:
  • Size: 4.8 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.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 585fb9f3cc600a52c8ca2f47f0b18b8fa1c5f1655e1f917c70c96ea950cf449e
MD5 d9cf667acefaa08c01e6ad5d23cbda81
BLAKE2b-256 be5b4e8e20a09054a6cd6a6990659759fb9c640b598107c4728a59f7bd118f35

See more details on using hashes here.

Provenance

The following attestation bundles were made for tamizhi-2.0.7-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

2.1.0

2 files

2.0.9

2 files

2.0.8

2 files

This release

2.0.7 This release

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