qalam 0.3.1

Interpreter for the Qalam programming language. Qalam is a dead-simple, Urdu inspired, interpreted programming langauge.
Documentation
jamat Prayer {
  banao(name, time, rakats) {
    yeh.name = name;
    yeh.time = time;
    yeh.rakats = rakats;
    yeh.completed = khali;
  }

  perform() {
    agar(na yeh.completed) {
      bolo "Performing " + yeh.name + " prayer, which has " + str(yeh.rakats) + " rakats.";
      yeh.completed = sach;
    } warna {
      bolo yeh.name + " prayer has already been completed.";
    }
  }

  status() {
    agar(yeh.completed) {
      bolo yeh.name + " prayer is completed.";
    } warna {
      bolo yeh.name + " prayer is pending.";
    }
  }
}

jamat Nafl shamil Prayer {
  banao(name, time, rakats) {
    asli.banao(name, time, rakats);
  }

  status() {
    asli.status();
    agar(na yeh.completed) {
      bolo "You SHOULD complete " + yeh.name + " prayer.";
    }
  }
}

jamat Fardh shamil Prayer {
  banao(name, time, rakats) {
    asli.banao(name, time, rakats);
  }

  status() {
    asli.status();
    agar(!yeh.completed) {
      bolo "You MUST complete " + yeh.name + " prayer now!";
    }
  }
}

rakho magrib = Fardh("Magrib", "Sunset", 3);
rakho witr = Nafl("Witr", "After Isha", 3);

magrib.status();
bolo "";
witr.status();
bolo "";

magrib.perform();
witr.perform();

bolo "";
magrib.status();
witr.status();