LOLCODE

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

LOLCODEezoteryczny język programowania zainspirowany językiem pidgin English, używanym w fenomenie internetowym LOLCAT[1]. Język został stworzony w 2007 przez Adama Lindsaya, pracownika Wydziału Informatyki Lancaster University.

Język nie ma jeszcze dokładnie zdefiniowanej składni i semantyki. Mimo to istnieje już kilka działających interpreterów i kompilatorów.

Struktura języka i przykłady[edytuj | edytuj kod]

LOLCODE jest napisany w mocno skróconym angielskim internetowym slangu i osoby, które go rozumieją, potrafią często zrozumieć zasadę działania programów bez doświadczenia programistycznego. Poniżej przykład programu Hello world oraz programu wypisującego zawartość pliku.

Przykład 1:

 HAI
 CAN HAS STDIO?
 VISIBLE "HAI WORLD!"
 KTHXBYE
Kod Komentarz
HAI We wszystkich programach napisanych w LOLCODE, HAI (slangowy odpowiednik angielskiego "hi") rozpoczyna program.
CAN HAS [PLIK]? Odpowiada za załadowanie bibliotek z dodatkowymi funkcjami. W języku C odpowiednikiem jest #include <PLIK>.
VISIBLE [TEKST] Wypisuje tekst.
KTHXBYE Kończy każdy program.

Przykład 2:

 HAI
 CAN HAS STDIO?
 PLZ OPEN FILE "LOLCATS.TXT"?
     AWSUM THX
         VISIBLE FILE
     O NOES
         INVISIBLE "ERROR!"
 KTHXBYE

W tym przykładzie zastosowana została komenda otworzenia pliku (PLZ OPEN FILE "NAZWA"? - "Proszę otwórz plik "NAZWA"?) oraz zwracanie wyjątków (AWSUM THX — "Świetne, dzięki!" i O NOES — "O nie!").

Inne komendy to[2]:

I HAS A zmienna – deklarowanie zmiennej
LOL zmienna R wartość – przypisanie wartości do zmiennej
BTW komentarz – traktowanie wszystkich znaków, aż do końca linii, jako komentarz
INVISIBLE – zwracanie błędu na standardowy strumień błędów
IM IN YR nazwa – rozpoczynanie pętli
KTHX – zakończenie pętli
GTFO lub ENUF – przerwanie pętli
IZ – instrukcja warunkowa

Przykład 3:

 HAI
 CAN HAS STDIO?
 I HAS A VAR
 IM IN YR LOOP
    UP VAR!!1
    IZ VAR BIGGER THAN 10? KTHX
    VISIBLE VAR
 IM OUTTA YR LOOP
 KTHXBYE

Powyższy program wypisuje liczby od 1 do 10 (został napisany według specyfikacji w wersji 1.0). Ten sam program można zapisać (według specyfikacji 1.2) w następujący sposób:

 HAI
 CAN HAS STDIO?
 IM IN YR LOOP UPPIN YR VAR TIL BOTHSAEM VAR AN 10
     VISIBLE SUM OF VAR AN 1
 IM OUTTA YR LOOP
 KTHXBYE

Wsparcie[edytuj | edytuj kod]

Wsparcie LOLCODE zostało dodane do wirtualnej maszyny Parrot.

Istnieje oparty na platformie .NET kompilator LOLCODE, napisany przez Nicka Johnsona. Został wyróżniony podczas organizowanych przez Microsoft seminariów TechED 2007 Conference w Australii.

Przypisy

  1. Dwight Silverman: I’M IN UR NEWSPAPER WRITIN MAH COLUM. Chron.com, 2007-06-06. [dostęp 2007-06-06].
  2. SORN.net.

Linki zewnętrzne[edytuj | edytuj kod]