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ý statement 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 s 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 - vsechny tridy dedi implicitne z teto tridy. Obsahuje metody naDryst() a kantuje(Bazmek b), ekvivalent pro toString() a equals(Object o)
  • Citac - cteni ze souboru
  • Konzola - vypis 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.

Rubat cyklus 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]

Navratový 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
   }
}
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: BSODBIOSEmacsKVGRESETЛинукс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