Prvi Bosanski Programski Jezik

Sintaksa zasnovana na bosanskom jeziku

Bosscriptova sintaksa je dizajnirana tako da prati bosansku strukturu rečenica i način razmišljanja. Ključne riječi i izrazi su pažljivo birani kako bi njihova svrha bila intuitivna korisnicima, pritom držeći se stila jezika iz C-porodice.

class model
super prototip
int, double, float broj
string tekst
boolean logički
for(int i = 0; i < 10; i++;) za svako (x od 0 do 9)
Example operator+(const Example& e) funkcija plus(e: Example)

Idealan za početnike

Bosscript je odličan izbor kao vaš prvi programski jezik iz više razloga.

✅ Dizajniran prvenstveno za početnike

✅ Jezik bogat opcijama, podržava više paradigmi

✅ Fleksibilan i potpuno opcionalan type checking

✅ Promovira dobre programerske prakse i navike

✅ Jednostavna instalacija i korištenje

// U Bosscriptu nema iznenađenja. Granice petlje su tačno onakve kakve očekujete.

za svako (x od 0 do 10){
    ispis(x);
}

Output:
0 1 2 3 4 5 6 7 8 9 10

Objektno orijentisano programiranje

Podrška za objektno orijentisano programiranje uključujući nasljeđivanje i enkapsulaciju

model A {
    konstruktor(a: broj){
        @a = a;
    }
    privatno {
        var a;
    }
    javno {
        funkcija getA() {
            vrati @a;
        }
        funkcija setA(a: broj) {
            @a = a;
        }
    }
}
model B < A {
    konstruktor(a: broj, b: broj){
        prototip(a);
        @b = b;
    }

    privatno {
        var b;
    }

    javno {
        funkcija test() {
            ispis("[" + @a + "," + @b + "]");
        }
    }
}

Funkcionalno programiranje

Podrška za funkcionalno programiranje uključujući lambda funkcije funkcije višeg reda.

var voce = [
    { ime: "jabuka", kolicina: 5 },
    { ime: "banana", kolicina: 2 },
    { ime: "visnja", kolicina: 3 },
];

// Filtriraj voće na one sa količinom većom od 2, sortiraj ih po količini silazno, izdvoji samo imena voća i ispiši ih

voce
  .filtriraj(funkcija(vocka) => vocka.kolicina > 2)
  .sortirajSilaznoPo("kolicina")
  .primijeni(funkcija(vocka) => vocka.ime)
  .zaSvaki(ispis);

Output:
jabuka
visnja

Transpilacija u JavaScript

Podrška za razvoj manjih web aplikacija kroz transpilaciju u JavaScript, uključujući direktno umetnut JavaScript kod

var response = `await fetch("https://bosscript.ba/funfact")`;
var element = `document.querySelector("#element")`;
za svako (x od 0 do 10 korak 2){
    ispis(x);
}
let response = await fetch("https://bosscript.ba/funfact");
let element = document.querySelector("#element");
for (let x = 0; i <= 10; i += 2;) {
    console.log(x);
}

Bogata standardna biblioteka

Bosscript posjeduje bogatu standardnu biblioteku od 10 paketa koji dodaju mnoge korisne opcije, sve od datuma do podrške za Telnet.