Technologies Used

JavaScript HTML CSS Interpreter

ChettaLang is a Malayalam-inspired programming language that allows users to write code using localized Malayalam keywords. Inspired by BhaiLang, this project was built to make programming more relatable, culturally engaging, and accessible to Malayalam speakers.

Unlike a simple syntax wrapper, ChettaLang is a fully functional browser-based interpreter built entirely with vanilla JavaScript. It includes a custom lexer, parser (AST builder), and interpreter, all running client-side without any backend dependency.

The project is deployed via GitHub Pages, allowing anyone to try the language instantly without installation.


🌟 Features

  • Malayalam-inspired keywords - Code in your language!
  • 🚀 Browser-based interpreter - No installation required
  • 💻 Interactive IDE - Write, run, and debug instantly
  • 📚 Rich examples - Learn from pre-built programs
  • 🎨 Beautiful UI - Modern, responsive design
  • 🔥 GitHub Pages ready - Deploy in minutes

Online (Recommended)

Visit akhilsu.github.io/ChettaLang and start coding immediately!


📝 Syntax Guide

Hello World

para("Hello, World!")
para("Namaskaram, Lokam! 🙏")

Variables

sookshikku name = "Chetta"
sookshikku age = 25
para(name)
para(age)

User Input

sookshikku name = chodikku("What is your name?")
para("Hello, ")
para(name)

Conditional Statements

sookshikku score = 85

aanel(score >= 90) {
    para("Adipoli! Grade A!")
} allengil {
    para("Keep trying!")
}

Loops

pravarthikku(sookshikku i = 1, i <= 5, i = i + 1) {
    para(i)
}

Arithmetic Operations

sookshikku a = 10
sookshikku b = 5

para(a + b)  # Addition
para(a - b)  # Subtraction
para(a * b)  # Multiplication
para(a / b)  # Division

🔑 Keywords Reference

ChettaLang English Description
para print Print output
chodikku ask/input Get user input
sookshikku store Declare variable
aanel if Conditional statement
allengil else Else statement
pravarthikku loop For loop
sathyam true Boolean true
asathyam false Boolean false

🎨 Examples

Example 1: Greeting

sookshikku name = chodikku("Per enthaanu?")
para("Namaskaram, ")
para(name)
para("! Sukhamaano?")

Example 2: Number Checker

sookshikku num = chodikku("Enter a number:")

aanel(num > 0) {
    para("Positive number!")
} allengil {
    aanel(num < 0) {
        para("Negative number!")
    } allengil {
        para("Zero!")
    }
}

Example 3: Multiplication Table

sookshikku n = chodikku("Which table?")
para("Multiplication table of ")
para(n)

pravarthikku(sookshikku i = 1, i <= 10, i = i + 1) {
    para(n * i)
}

Example 4: Simple Calculator

para("ChettaLang Calculator")

sookshikku a = chodikku("First number:")
sookshikku b = chodikku("Second number:")

para("Sum: ")
para(a + b)

para("Difference: ")
para(a - b)

para("Product: ")
para(a * b)

para("Quotient: ")
para(a / b)