Zobacz więcej z kategorii: fan klub

Uuk! Czyli jak Bibliotekarz programował Hexa

2013-08-16 21:56:37

Bibliotekarz Niewidocznego Uniwersytetu jednostronnie zdecydował zwiększyć poziom zrozumienia, tworząc „Słownik orangutańsko-ludzki”. Pracował nad nim od trzech miesięcy.
Nie było to łatwe. Na razie doszedł do „uuk* [przyp.: Które mogło oznaczać... Nie. Wśród znaczeń którego byty m.in.: „Bardzo przepraszam, ale wisi pan na moim gumowym kole, uprzejmie dziękuje”, „Dla pana jest to być może istotny element biomasy dostarczającej planecie tlenu, ale dla mnie to dom” oraz Jestem pewien, że jeszcze przed chwilą był tu las tropikalny”].


Wszyscy potrafimy powiedzieć coś, co powinno być zrozumiałe przez Bibliotekarza, choć czasem sami do końca nie wiemy jak będzie to zrozumiane przez niego (co może okazać się fatalne w konsekwencjach), dlatego nie powinno być trudno wyobrazić sobie język w jakim Bibliotekarz może porozumiewać się z Hexem.

Otóż na bazie pewnego bardzo uproszczonego języka oprogramowania - BrainF***a - powstał język całkowicie dostosowany do możliwości Bibliotekarza i testowany na najbliższej mu maszynie - Hexie.

Podstawy:


- Język ma się dać pisać i czytać przez Orangutany.
- Ma być też prosty, łatwy do zapamiętania i nie wspominać słowa na "m".
- Banany są dobre

Komentarze
Słowo Uuk! może oznaczać wszystko, od pojedynczych słów, zdań do całych idei i emocji, samo w sobie nie wymaga komentarza. Oczywistym jest więc co oznacza i jaką pełni funkcję w programie.
Pamiętamy tylko, że domyślnie nasz programowany wskaźnik będzie zaczynał od pierwszej komórki.

Elementy Składni


Uuk.
Uuk!
Uuk?

Połączone w pary będą tworzyć komendy, stąd też program musi zawierać ich parzystą liczbę, przerwy pomiędzy liniami będą ignorowane.

Komendy
Uuk. Uuk?
Wskaźnik przesuwa się do następnej komórki.
Uuk? Uuk.
Wskaźnik przesuwa się do poprzedniej komórki.
Uuk. Uuk.
Zwiększa wskazaną komórkę.
Uuk! Uuk!
Zmniejsza wskazaną komórkę.
Uuk. Uuk!
Zczytuje znak z wejścia standardowego i wstawia do wartości ASCII wskazanej komórki.
Uuk! Uuk.
Wypisuje znak w wartości ASCII równej wartości wskazanej komórki.
Uuk! Uuk?
Przenosi do komendy następującek po Uuk? Uuk! Jeśli wartość wskazanej przez wskaźnik komórki wynosi zero. Zauważ, że komendy Uuk! Uuk? i Uuk? Uuk! zagnieżdżają się jak pary nawiasów i odpowiadające pary definiowane są tak, jak nawiasy.
Uuk? Uuk!
Przenosi do komendy następującej odpowiadającemu Uuk! Uuk? jeśli wartość komórki wskazywanej przez wskaźnik wynosi zero.

Proste? Przecież to ma się dać napisać przez Orangutana!

źródło

Zobacz powiązane książki: Zbrojni

Autor: Grace