
Piet – A programming language in which programs look like abstract paintings - fny
http://www.dangermouse.net/esoteric/piet.html
======
the_duke
Some of the sample programs are kind of amazing:
[http://www.dangermouse.net/esoteric/piet/samples.html](http://www.dangermouse.net/esoteric/piet/samples.html)

Hilarious idea.

~~~
Roritharr
The Pi calculator text just made me burst out laughing, waking my girlfriend +
baby. Still worth it.

------
WildUtah
There used to be a couple guys that would submit solutions to the qualifying
round of the Google Code Jam (the round with the 25-hour time limit) in this
language. I think he had to zip a png file containing his program with another
file explaining of how to run it in order to submit.

~~~
betaveros
Looks like it was done twice in 2010 ([https://www.go-
hero.net/jam/10/languages/Piet](https://www.go-
hero.net/jam/10/languages/Piet)) and once in 2015 (by me!) ([https://www.go-
hero.net/jam/15/languages/Piet](https://www.go-
hero.net/jam/15/languages/Piet))

I sorta cheated with an assembler
([https://github.com/sl236/Piet](https://github.com/sl236/Piet)) though.

------
Aardwolf
Many more esoteric languages are on the esolang wiki:

[https://esolangs.org/wiki/Main_Page](https://esolangs.org/wiki/Main_Page)

Enjoy :)

------
jfrancisreid
Slightly non technical question about these. After looking at this and BF
esolang derivatives, are these esolangs essentially a category of intermediate
representations that would be useful for automated software analysis? Given
you can encode the language anyway you want (e.g. Ook), and while they aren't
efficient for writing and running programs, they are simple, consistent (if
large) inputs into an analysis engine. Is this considered a thing?

~~~
__s
You're better off going for lambda calculus. Which, admittedly, looks more
like an esolang than anything else

~~~
nonsince
Unlambda is an esolang based on this concept

------
__s
& through [https://github.com/shinh/elvm](https://github.com/shinh/elvm)
here's a lisp implementation:
[http://shinh.skr.jp/elvm/lisp.png](http://shinh.skr.jp/elvm/lisp.png)

Good tut:
[http://homepages.vub.ac.be/~diddesen/piet/index.html](http://homepages.vub.ac.be/~diddesen/piet/index.html)

------
cocktailpeanuts
I bet the people who write this language has no concept of "time" in the way
they perceive the world, therefore able to time travel freely.

------
mastre_
Tangentially related: The Whitespace Programming Language (WP[0], Homepage[1])

[0]
[https://en.wikipedia.org/wiki/Whitespace_(programming_langua...](https://en.wikipedia.org/wiki/Whitespace_\(programming_language\))
[1]
[http://compsoc.dur.ac.uk/whitespace/tutorial.html](http://compsoc.dur.ac.uk/whitespace/tutorial.html)

------
kevinwang
Taking inspiration from this, my friends and I made a programming language
where each program is chess games:
[https://github.com/VitamintK/Passant](https://github.com/VitamintK/Passant)

