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.9.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.9-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tamizhi-2.0.9.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.9.tar.gz
Algorithm Hash digest
SHA256 d6b3c0d0ada5898c75b0dc11b6c52803e2d4f99ab084adda216b35b78d1073cf
MD5 4ec17b93e27de2d772efc8f22bc7b0ba
BLAKE2b-256 dbe9c88dd83312040a12e077051af2eaa2079f5e570f69287eab8422ff72d9b2

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: tamizhi-2.0.9-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.9-py3-none-any.whl
Algorithm Hash digest
SHA256 591e15e1e75949824fea36197e18af9050a242cbcfa6e1b171e2f4bb889cce9c
MD5 d1b105d2f2ac91e0b9a069e513433c98
BLAKE2b-256 b2129b1595b1ca763b8f9b22fa7e5cf42aaa6997ee01590cca0ce8b792cf7e42

See more details on using hashes here.

Provenance

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

This release

2.0.9 This release

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