5 releases (breaking)

0.7.0 Apr 26, 2023
0.6.0 Apr 26, 2023
0.5.0 May 8, 2022
0.4.0 Apr 2, 2022
0.2.0 Apr 1, 2022

#132 in Internationalization (i18n)

Apache-2.0 and GPL-3.0 licenses

105KB
2.5K SLoC

Osmon's Logo

Osmon

Programming language made by Uzbek developers.

GitHub top language Channel Release CI Tests CI

About

Programming language that adopts uzbek dialect for its keywords and delivers a new experience for developers. This project is heavily inspired from Sukhrob Khakimov's open source projects.

Features

  • Has a virtual machine that is written in Rust
  • Uses libgccjit for static compilation
  • Has a simple syntax adopted from C family languages

Example

funksiya faktorial(n) {
    agar n == 0 {
        qaytar 1;
    }
    qaytar faktorial(n - 1) * n;
}

klass Faktorial {
    funksiya yarat(v) {
        shu._v = v;
        qaytar shu;
    }

    funksiya qiymat() {
        agar shu._v == 0 {
            qaytar 1;
        }

        joy f = Faktorial(shu._v - 1);
        joy v = shu._v;


        qaytar f.qiymat() * v;
    }
}

funksiya asosiy() {
    yoz("Klasslik faktorial(5) = ", Faktorial(5).qiymat());
    yoz("Rekursiv faktorial(5) = ", faktorial(5));
}

Installation

For *NIX based operating systems, you can install Osmon by running the following command:

curl -fsSL https://osmon.dev/install/install.sh | sh

for Windows, open PowerShell and run the following command:

iwr https://osmon.dev/install/install.ps1 -useb | iex

License

This project is licensed under dual licence MIT and Apache-2.0 Licenses - see the MIT and Apache files for details.

Dependencies

~6–16MB
~197K SLoC