Skip to main content

🐒 The Most Powerful Desi Programming Language — Code likh, duniya hila!

Project description

🐒 Gandu Language

Code likh, duniya hila!

The Most Powerful Desi Programming Language — Built for true Indian Techies who code with swag.

Gandu is a full-featured programming language with Hindi slang syntax that compiles through a proper Lexer → Parser → AST → Interpreter pipeline. It supports everything Python does — variables, loops, functions, classes, error handling, file I/O, API calls, Telegram bots, and more!


🚀 Quick Install

pip install gandu-lang

With all extras (Telegram + HTTP):

pip install gandu-lang[all]

💻 Run Your Code

gandu hello.gandu

Interactive REPL:

gandu

📝 Hello World

Jai Shree Ram

shuru kar {
    bol("Namaste Duniya! 🐒")
}

Jai Hind

🗺️ Language Reference

Program Structure

Every .gandu file must:

  1. Start with Jai Shree Ram
  2. Have a main block: shuru kar { ... }
  3. End with Jai Hind

Variables

bhai x = 10              ## mutable variable
pakka PI = 3.14          ## constant (cannot change)
bhai name = "Tijil"      ## string
bhai flag = sach         ## boolean (sach/jhooth)
bhai empty = kuch_nahi   ## None

I/O

bol("Hello!")                        ## print
bhai naam = sun("Naam daal: ")       ## input
chilla("HELP!")                      ## print uppercase

If-Else

agar (x > 10) {
    bol("Bada hai")
}
nahi toh (x == 10) {
    bol("Barabar hai")
}
warna {
    bol("Chhota hai")
}

Loops

## While loop
jab tak (x < 10) {
    bol(x)
    x += 1
}

## For loop
har ek (i andar range(10)) {
    bol(i)
}

## Break & Continue
tod_de       ## break
aage_badh    ## continue

Functions

kaam jod(a, b) {
    de_de a + b
}

bhai result = jod(5, 3)
bol(result)  ## 8

Classes (OOP)

gang Aadmi {
    naya(naam, umar) {
        apna.naam = naam
        apna.umar = umar
    }

    kaam hello(apna) {
        bol(f"Main hoon {apna.naam}, umar {apna.umar}")
    }
}

bhai raju = Aadmi("Raju", 25)
raju.hello()

Arrays & Dictionaries

bhai nums = [1, 2, 3, 4, 5]
daal(nums, 6)
bol(naap(nums))   ## 6

bhai info = {"naam": "Raju", "umar": 25}
bol(info["naam"])

Error Handling

try_kar {
    bhai x = 10 / 0
}
pakda (e) {
    bol(f"Error aaya: {e}")
}
chahe_jo_ho {
    bol("Yeh hamesha chalega!")
}

Imports

la os                        ## import Python module
manga json se loads          ## from json import loads
jugaad telegram              ## import gandu stdlib
jugaad http                  ## import gandu HTTP library

Built-in Functions

Function Description
bol(...) Print output
sun(...) Take input
naap(x) Length
type_bata(x) Check type
number(x) Convert to int
dashamlav(x) Convert to float
shabd(x) Convert to string
raand(a, b) Random number
rukja(n) Sleep n seconds
range(n) Range
sorted(list) Sort
ulta(list) Reverse

Standard Library

  • jugaad telegram — Telegram bots
  • jugaad http — API calls (GET, POST, PUT, DELETE)
  • jugaad file — File read/write
  • jugaad json — JSON parse/generate
  • jugaad math — Math operations

👨‍💻 Author

Tijil Kumarkumartijil11@gmail.com

📄 License

MIT License — Use it however you want!


Invented with 😤 and ❤️ by Tijil Kumar

Project details


Download files

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

Source Distribution

gandu_lang-1.0.0.tar.gz (32.5 kB view details)

Uploaded Source

Built Distribution

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

gandu_lang-1.0.0-py3-none-any.whl (34.6 kB view details)

Uploaded Python 3

File details

Details for the file gandu_lang-1.0.0.tar.gz.

File metadata

  • Download URL: gandu_lang-1.0.0.tar.gz
  • Upload date:
  • Size: 32.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for gandu_lang-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9d572df76611f81ecff77695dd64d76032acb41bd70c4852791a345c5660e8a0
MD5 a6e582968539d12cd129e6a2dd1e8219
BLAKE2b-256 920cd0822096e5166a4860ad455221f5a1b02415f495ea13fd4cafe0171cf12a

See more details on using hashes here.

File details

Details for the file gandu_lang-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: gandu_lang-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 34.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for gandu_lang-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4604717c699ae4aefccb83fd48d62884380262c499cded3040abfe9d9d2c02dc
MD5 16e4a7daa65e30b62059fe25c8b1ab93
BLAKE2b-256 eb10ce84b285e9b8a0f572f88ec30c24a8001fe88448c26fbeb28e318d9559f5

See more details on using hashes here.

Supported by

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