Samskritam

संस्कृतम्
विद्या ददाति विनयम्

A toy programming language built with Sanskrit keywords. Code like the ancient scholars, Devabhasha meets modern programming!

Try It Out Install CLI

What is Samskritam?

A dynamically typed toy programming language using the sacred language of Sanskrit -Devabhasha.

Dynamically Typed

No need to declare types. Variables adapt like water takes the shape of its vessel.

श्

Sanskrit Keywords

Write code using beautiful Sanskrit words like yadi (if), yavat (while), vadah (speak).

क्रि

Functions & Recursion

Define functions with kriya (action) and return values with pratyarpaya. Full recursion support!

विद्

Fun & Educational

Built for fun and learning. Not for production -but perfect for understanding how languages work!


Syntax Guide

Every Samskritam keyword mapped to its Sanskrit meaning

Samskritam Equivalent Sanskrit Meaning
namaskaram Program Start Greetings / Salutation
viramah Program End Stop / Cessation
mana Variable Declaration (let/var) Think / Consider
vadah Print Speak / Say
yadi if If / In case
athava yadi else if Or if
anyatha else Otherwise
yavat while As long as
viramah kuru break Do stop
agrima continue Next / Forward
kriya function Action / Deed
pratyarpaya return Give back / Return
satyam true Truth
asatyam false Untruth
shunya null Void / Zero / Emptiness

Playground

Write and run Samskritam code right in your browser!

Samskritam Playground


Installation

Install Samskritam CLI on your machine

Install globally via npm:

npm install -g samskritam-lang

Then run your programs:

samskritam run hello.sam - Run a program

samskritam repl - Start interactive REPL

samskritam help - Show help

Requires Node.js >= 14. File extension: .sam


Examples

See Samskritam in action

Hello World

// The simplest program
namaskaram

  vadah "Namaste, Vishva!";

viramah

Variables & Conditionals

namaskaram

  mana vayah = 20;

  yadi (vayah >= 18) {
    vadah "Vyaskah! (Adult!)";
  } anyatha {
    vadah "Balakah! (Child!)";
  }

viramah

Functions & Recursion

namaskaram

  kriya kramagunankit(n) {
    yadi (n <= 1) {
      pratyarpaya 1;
    }
    pratyarpaya n * kramagunankit(n - 1);
  }

  vadah "5! = " + kramagunankit(5);
  // Output: 5! = 120

viramah