OSTRAJava

Z Necyklopedie
Skočit na navigaci Skočit na vyhledávání

OSTRAJava má za cíl pozvednout kvalitu (nejen ostravského) programování.

Na rozdíl od Javy vychází OSTRAJava přímo z mluveného jazyka (ostravského nářečí), tedy z něčeho čemu obyčejní lidé rozumějí. Typický ostravský haviř pak nebude mít problém přejít od těžby uhlí ke klávesnici. Jazyk tak mimo jiné řeší i problém nezaměstnanosti na moravsko-slezsku.

Jakékoliv heslo na téma OSTRAJava byste na české Wikipedii hledali marně.
Nehopsající Wikipedie.png

Syntaxe[editovat | editovat zdroj]

Příklad 1 - Hello world[editovat | editovat zdroj]

Zde je typický Hello world program v OSTRAJavě.

banik pyco

tryda Ostrava{
    rynek(){
        Konzola.pravit("Toz vitaj") pyco
    }
} 

fajront pyco
  • Všechny soubory OSTRAJavy začínají klíčovým slovem banik.
  • Všechny soubory OSTRAJavy končí klíčovým slovem fajront, označující konec směny.
  • Každý výraz programu musí být ukončen klíčovým slovem pyco. Nahrazuje tedy v Javě používaný středník.
  • Hlavní třída programu se vždy jmenuje Ostrava(jak jinak) a hlavní metoda se vždy jmenuje rynek.
  • Pozn.: OSTRAJava je case in-sensitive a nedoporučuje se používat diakritiku, jinými slovy malym a kratky.

Typy[editovat | editovat zdroj]

OSTRAJava obsahuje 4 primitivní typy:

  • cyslo - integer
  • bul - boolean
  • chachar - char
  • cyslo_desetinne - float

Hodnoty:

  • fajne - true
  • nyt - false
  • chuj - null

Základní knihovna OSTRAJavy také obsahuje třídy

  • Dryst - ekvivalent String
  • Bazmek - všechny třídy dědí implicitně z této třídy. Obsahuje metody naDryst() a kantuje(Bazmek b), ekvivalent pro toString() a equals(Object o)
  • Citac - čtení ze souboru
  • Konzola - výpis do konzole
  • Bafr - jednoduchý buffer na čtení chacharů

Deklarace[editovat | editovat zdroj]

Deklaraci je nutno začít klíčovým slovem toz:

toz cyslo i = 1 pyco

Podmínky[editovat | editovat zdroj]

Pro vytvoření podmínky použijeme konstrukt kaj - kajtez - boinak.

Jednotlivé výrazy můžeme spojovat pomocí boolenovského ci (or) a aj (and):

toz bul a pyco
toz bul b pyco

//...

kaj (a == fajne ci b == fajne){
   // ...
} kajtez (a == nyt aj b == fajne){
   // ...
} boinak {
   // ...
}

Cykly[editovat | editovat zdroj]

Cyklus má OSTRAJava pouze jeden. Pomocí rubat vytvoříme while.

Cyklus rubat se dá přeřušit pomocí zdybat (break) a nebo přeskočit jeden cyklus pomocí dlabat (continue):

toz cyslo i = 0 pyco

rubat (i < 5){
    kaj (i == 4){
      zdybat pyco 
   }
   //...
   i = i+1 pyco
}

Příklad 2[editovat | editovat zdroj]

Následuje jednoduchý příklad na čtení ze souboru:

banik pyco

tryda Priklad2 {
   nacti(Dryst nazevSouboru){

        toz Citac c = zrob Citac() pyco
        c.otevr(nazevSouboru) pyco

        toz Dryst radka pyco
        radka = c.citajRadku() pyco

        rubat (radka != chuj){
            // ...
            radka = c.citajRadku() pyco
        }
        c.zavr() pyco
    }
}

fajront pyco

Dědičnost[editovat | editovat zdroj]

banik pyco

tryda Obdelnik{
   toz cyslo dylka pyco
   toz cyslo vyska pyco

   Obdelnik(cyslo dylka, cyslo vyska){
      joch.dylka = dylka pyco
      joch.vyska = vyska pyco
   }
}

tryda Stverec fagan od Obdelnik{
    Stverec(cyslo velikost){
       forant(velikost, velikost) pyco
    }
} 

tryda Ostrava{
   rynek(){
      toz Stverec s = zrob Stverec(5) pyco 
   }
}

fajront pyco

OSTRAJava je samozřejmě jazyk objektový.

  • Pokud chceme uvést třídu z které chceme dědit použijeme konstrukt fagan od
  • joch slouží jako reference na vlastní instanci, tedy ekvivalent this
  • forant tedy předák na šichtě slouží jako reference na rodiče, tedy ekvivalent super
  • nový objekt vytvoříme pomocí zrob

Pokud bychom chtěli vytvořit pole, uděláme to následovně:

toz cyslo[] pole = zrob cyslo[5] pyco

Metody[editovat | editovat zdroj]

Návratový typ metody se píše stejně jako v Javě před název metody. Pro metodu s prázdným návratovým typem není třeba psát nic.

Pro navrácení hodnoty je použito klíčové slovo davaj:

tryda Buu{
   cyslo fuu(Dryst text){
       //...
       davaj text.dylka pyco
   }
}

Pro další studium je doporučeno navštívit programovou prastránku: github.com/tkohout/OSTRAJava.

Počítače
Ělěktronika 666

Počítače: AbakusAcerAppleBarbie PCCMEUDellDetektor lžiElektronika 666HPIntelKlapkobřinkostrojLenovoNový JeruzalémRačunik-RTuringův strojUral 2
Hardware: Caps LockCD-RWDěrná páskaF13iPrdKompresorPaměť ROOMScroll lockŠkoda 1000MBŠkvorPaměť WOM
Software: BIOSBlenderBSODEmacsKVGRESETЛинуксMicrosoft WordMooreův zákonPoznámkový blokPřekladSvatý TučňákVálka s švábyWindowsVistaRay Tracing
Programování: BrainfuckC SharpC++DebuggerJavaLispnOTHINGOpenOSTRAJavaPočítačová lingvistikaProgramátor obecnýVánočková architektura
Aplikace: AhE-mailEndInternetKomprese datRodné čísloTrabant AussichtDOSBoxDvě minuty nenávisti