Whitespace

humorný ezoterický programovací jazyk From Wikipedia, the free encyclopedia

Whitespace
Remove ads

Whitespace je humorný ezoterický programovací jazyk vytvořený Edwinem Bradym a Chrisem Morrisem, představený 1. dubna 2003. Veškerá syntaxe jazyka sestává z bílých znaků (mezer, tabulátorů a konců řádek; anglicky se označují jako whitespace, odtud název), veškeré jiné znaky (písmena, čísla, symboly atd.) jsou ignorovány.

Thumb
Ukázka programu ve Whitespace s barevným zvýrazněním syntaxe

Whitespace je imperativní jazyk běžící na virtuálním stroji v podobě zásobníkového počítače vybaveného haldou.

Remove ads

Syntaxe

Program je tvořen posloupností příkazů, z nichž každý sestává z řetězce významných symbolů (mezerník SP, tabulátor TAB, znak konce řádky LF), jiné symboly jsou zcela ignorovány. Před každým příkazem je označení typu příkazu:

Další informace Označení, Typ příkazu ...

Čísla (která se vyskytují jako parametry některých příkazů) mohou být libovolně velká, zadávají se v binárním zápisu jako posloupnost znaků SP a TAB (reprezentující 0, resp. 1) a ukončená znakem LF. První znak určuje znaménko – číslo začínající SP je kladné, číslo začínající TAB je záporné.

Návěští jsou tvořena libovolnou posloupností znaků SP a TAB ukončenou LF. Tyto posloupnosti musí být jednoznačné (nesmí se v programu opakovat).

Instrukce pro práci se zásobníkem

Na zásobník lze ukládat celá čísla libovolné velikosti.

Další informace Příkaz, Parametr ...

Aritmetické instrukce

Ve Whitespace se pracuje pouze s celými čísly, v aktuální verzi nejsou čísla s plovoucí řádovou čárkou podporována.

Aritmetické instrukce provedou zadanou operaci se dvěma vrchními čísly, která ze zásobníku vyjmou, a výsledek uloží na zásobník. První (hlouběji) uložené číslo je považováno za levý operand.

Další informace Příkaz, Parametr ...

Instrukce přístupu k haldě

Halda je adresována celými čísly uloženými na vrcholu zásobníku. Při čtení je adresa na zásobníku nahrazena hodnotou z haldy, při zápisu je adresa a hodnota ze zásobníku přečtena a vyjmuta.

Další informace Příkaz, Parametr ...

Řídící instrukce

Další informace Příkaz, Parametr ...

Instrukce vstupu a výstupu

Whitespace obsahuje instrukce umožňující komunikaci s uživatelem. Instrukce pro vstup ukládají přečtené hodnoty do haldy, na adresu obsaženou na zásobníku.

Další informace Příkaz, Parametr ...
Remove ads

Externí odkazy

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads