Hacker News new | past | comments | ask | show | jobs | submit login

It’s trivial to reformat the source code into a donut shape.



Sometimes it's those trivial changes which add a lot of the overall charm.


Non-trivial, IMHO - automating it sounds non trivial, and doing by hand is quite non-trivial, right? We gotta go make hand edits line by line?


For a language like C, I would describe the formatting process as "straightforward" as opposed to "trivial". It's straightforward in that it feels very mechanical, but not trivial in the sense that it's difficult to fully automate the process. (The mechanical part is inserting spaces at the right places, the not so mechanical part is swapping tokens and rewriting expressions so that things line up).

You can see an example recording here of how it's done:

https://www.ioccc.org/2019/yang/obfuscation.html

First half of it is writing and golfing, second half is the formatting bits.

For languages like Perl and Ruby, the formatting process is easily automated and mostly trivial.


That visualizer is incredible, appreciate it and the insight - and 4 hours! Wow.


Considering the language, C and the size of the file, I would not argue it is not trivial. The key feature of donut.c is how small the file actually is.

For something larger or in other languages, or having text strings, certainly not trivial.


We need someone to write pastry.c which takes any C file and reorganizes the code into the shape of delicious bakery products.


mmmmm.. trivial donuts...




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: