LOLCODE
LOLCODE – ezoteryczny 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 .
Spis treści |
[ edytuj ] Struktura języka i przykłady
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 [2]
-
-
Kod Komentarz HAIWe 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. KTHXBYEKoń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 [3] :
- 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 [2]
Powyższy program wypisuje liczby od 1 do 10 (został napisany wg. specyfikacji w wersji 1.0). Ten sam program można zapisać (wg 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
[ edytuj ] Wsparcie
Wsparcie LOLCODE zostało dodane do wirtualnej maszyny Parrot .
Istnieje oparty o platformę .NET kompilator LOLCODE, napisany przez Nicka Johnsona. Został wyróżniony podczas organizowanych przez Microsoft seminariów TechED 2007 Conference w Australii .
Przypisy
- ↑ Dwight Silverman: I'M IN UR NEWSPAPER WRITIN MAH COLUM . Chron.com, 2007-06-06 . [dostęp 2007-06-06].
- ↑ 2,0 2,1 Adam Lindsay: " LOLCODE main page . lolcode.com, 2007-05-25 . [dostęp 2007-10-02].
- ↑ SORN.net
[ edytuj ] Linki zewnętrzne
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Home Page , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

