(no title)
mellonaut | 1 year ago
A guy (called Piet!) saw an artwork that reminded him of Piet (the lang) and tried executing it¹.
> It ran! [...] This is probably the first time in history that a graphic artist has painted a functionally workable computer program by accident.
[0]: https://www.dangermouse.net/esoteric/piet/samples.html [1]: https://gitlab.fabcity.hamburg/hofalab/piet-get-together
lifthrasiir|1 year ago
[1] https://www.mcmillen.dev/sigbovik/
nightpool|1 year ago
dylan604|1 year ago
mock-possum|1 year ago
> It ran! The code executes an infinite loop which reads in ASCII characters and prints out the corresponding numerical ASCII values.
Get out of town. Get right out of town.
gnfargbl|1 year ago
> Naturally, a more accurate value can be obtained by using a bigger program.
I think that's a first for me.
schoen|1 year ago
Edit: Oh yes, it's "westley" from 1988: https://www.ioccc.org/years-spoiler.html#1988_westley
mzi|1 year ago
If I remember correctly, this program also calculates pi more precisely the larger the circle.
boothby|1 year ago
> The interpreter now begins sliding from its current white codel, in the new direction of the DP, until it either enters a coloured block or encounters another restriction.
The npiet interpreter, instead, rewinds its position to the last colored codel upon peeking through whitespace. One of these days, I intend to add that behavior as an option to the lexer in my Piet compiler[1], but I haven't bothered yet.
Following the spec, the program is a trivial nonhalting loop because the extreme corners of almost all blocks are white-adjacent. Writing complex Piet programs to target multiple interpreters and compilers is quite the challenge, as they've all got subtly different undocumented interpretations of the spec. I think that the output of my Piet backend is more or less interpreter-agnostic, but I've only dug into the details of three or four other interpreters.
[1] https://github.com/boothby/repiet/
blauditore|1 year ago
However, another question is how many of such random images would actually do something "meaningful".
indigoabstract|1 year ago
I think this truly deserves a CS Ig Nobel Prize, if there were one, for making people laugh and then making people think.
thih9|1 year ago
While impressive organically, it sounds easy when targeted; we could design a programming language where an image of Mona Lisa prints "hello world" - and claim a similar feat.
Perhaps the reverse is more interesting - programmers accidentally wrote a language that could treat real world abstract art as valid input.
cinntaile|1 year ago
Isn't that what happened here?
thih9|1 year ago
abrookewood|1 year ago