osmon

Crates.ioosmon
lib.rsosmon
version0.7.0
sourcesrc
created_at2022-04-01 18:41:03.691808
updated_at2023-04-26 18:08:56.489702
descriptionA programming language for Uzbeks
homepagehttps://osmon.dev
repositoryhttps://github.com/osmon-lang/osmon
max_upload_size
id560458
size189,212
Orzklv (orzklv)

documentation

https://wiki.osmon.dev

README

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.

Commit count: 199

cargo fmt