LOLCODE

Logo interpretera lci LOLCODE dla języka programowania LOLCODE

LOLCODEezoteryczny język programowania zainspirowany językiem pidgin English, używanym w fenomenie internetowym LOLCAT[1]. Język został stworzony w 2007 r. 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]

Obsługa LOLCODE została dodana 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[edytuj | edytuj kod]

  1. Dwight Silverman: I’M IN UR NEWSPAPER WRITIN MAH COLUM. Chron.com, 2007-06-06. [dostęp 2007-06-06].
  2. SORN.net. sorn.net. [zarchiwizowane z tego adresu (2009-03-26)]..

Linki zewnętrzne[edytuj | edytuj kod]