HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
boothby
repiet
Python2019–2024
boothby / repiet

repiet

A compiler for the esoteric language Piet, targeting multiple backends.

2Distinct people
7Mentions
1Explicit recommenders
100GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A compiler for the esoteric language Piet, targeting multiple backends.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

Bears mentioning that Piet is "faster than C" if you use the right compiler. https://github.com/boothby/repiet/blob/master/README.md#but-... Among the esoteric languages I've…

boothby used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year7 dated mentions

Observed mentions: 2019-11-25 05:06:41 UTC to 2024-10-23 14:23:37 UTC.

012342019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 4 mentions; 1 submissions, 3 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC101
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC413

What Hacker News says

7 sources
I'm a lover of esoteric languages, and Piet[1] captured my imagination more than any other. So, I wrote a compiler[2] for the language, eventually writing a backend that re-targets Piet itself. And since I love code golf, I wrote most of the compiler in the extremely tortured form that only fellow golfers can love. But I balanced the golf with extensive comments, as a bit of an experiment on the varied advice that we programmers receive about comments. Do they help? Can I keep them current as the code beneath them changes? (Jury's still out on both, but I find the juxtaposition aesthetically amusing). Just recently, I made a friend! And by "friend" I mean that another human has written another Piet compiler[3] and it's a beautiful project and we were delighted to discuss our tortuous projects that we wrote for pure fun! So I've got
Read the rest
ta plug his compiler too -- it's written in safe Rust! Too cool! [1] https://www.dangermouse.net/esoteric/piet.html [2] https://github.com/boothby/repiet [3] https://github.com/pwang00/pietcc/
In Ask HN: What's the most creative 'useless' program you've ever written?
> What does an algorithm look like? Writing Piet by hand is a fun way to explore this. Sergei Lewis[1] and I[2] have each written tools to generate Piet code. Sergei's assembler makes much nicer looking code than my Piet backend. All you can really see from my compiler's output is that I'm really lazy and used a trampoline[3] [1] http://www.toothycat.net/wiki/wiki.pl?MoonShadow/Piet [2] https://github.com/boothby/repiet/ [3] https://en.wikipedia.org/wiki/Trampoline_(computing)
In Piet: Programming language in which programs look like abstract paintings (2002)
Sadly, that depends on a discrepency between npiet and the current Piet spec: > 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 m
Read the rest
ore or less interpreter-agnostic, but I've only dug into the details of three or four other interpreters. [1] https://github.com/boothby/repiet/
In Piet: Programming language in which programs look like abstract paintings (2002)
I didn't know anything about compilers, but I figured out how to compile Piet programs, so I wrote a compiler[1]. The project has stalled out for (a) lack of free time and (b) some silly ambitions, but I don't care what the public thinks about my lack of updates, and that's great. In the meantime, I've been going down weird rabbit holes and learning aspects of computing that I missed in school. [1] https://github.com/boothby/repiet
In Why I prefer making useless stuff
boothby·Dec 30, 2019Recommendation phrase
Bears mentioning that Piet is "faster than C" if you use the right compiler. https://github.com/boothby/repiet/blob/master/README.md#but-... Among the esoteric languages I've learned, Piet is by far, hands down, my favorite. But it's curiously opinionated about reading input. I don't think any interpreter / compiler gets it right, mine included. Painting (one does not write) Piet code to safely handle input, by that spec, is particularly annoying.
In Piet, a programming language in which programs look like abstract paintings

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.