Piet
![](https://upload.wikimedia.org/wikipedia/commons/d/d0/Piet_Program.gif)
![](https://upload.wikimedia.org/wikipedia/commons/4/48/Piet_Program_Hello_World.gif)
Piet – ezoteryczny język programowania opracowany przez Davida Morgan-Mara. Nazwa języka pochodzi od holenderskiego malarza Pieta Mondriana. Pierwotnie zaplanowana nazwa Mondrian okazała się już zajęta.
Programy tworzone w Piet to bitmapy, które wyglądem przypominają abstrakcyjne obrazy. Kompilacji towarzyszy kursor, który porusza się po obrazie „przeskakując” z jednego obszaru o jednolitej barwie na kolejne. Procedury są wykonywane wówczas, gdy kursor opuszcza dany obszar.
Piet używa standardowo 20 kolorów. 18 z nich uporządkowano według jasności i odcienia (3 stopnie jasności i 6 stopni odcienia). Kolory biały i czarny nie są uporządkowane według powyższych zasad. Wszystkim 20 kolorom przypisano konkretne działania. Kiedy kursor przemieszcza się z jednego obszaru o danej barwie do kolejnego obszaru o innej barwie, zmiana stopnia jasności i barwy wywołuje procedurę odpowiadającą stopniom zmiany. Kursor nie może się przemieścić na obszar o kolorze czarnym. Jeśli kursor napotka taki obszar, następuje zmiana kierunku poruszania się kursora. Gdy kursor wyczerpie wszystkie możliwe opcje zmiany kierunku, program kończy swoje działanie. Obszar poza krawędziami bitmapy także jest traktowany jako czarny. Pola białe nie wywołują żadnych procedur, zezwalają natomiast kursorowi na poruszanie się po swoim obszarze. Zachowanie na polach o innej barwie niż 20 standardowych pozostawiono do decyzji kompilującego.
Zmienne są przechowywane w pamięci na pojedynczym stosie jako liczby całkowite ze znakiem. Większość zdefiniowanych procedur obejmuje operację na tym stosie, a także dane wejściowe/wyjściowe i zasady poruszania się kursora kompilacyjnego.