whage
Ken Thompson wrote in his famous paper [1] about quines:

> If you have never done this, I urge you to try it on your own. The discovery of how to do it is a revelation that far surpasses any benefit obtained by being told how to do it

Every once in a while I give them a try but I couldn't yet create one and it frustrates me very much. Afraid of being denied that "revelation" I never dared to read his paper past that point. I'm afraid I might never read it because of my ego.

1: https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_Ref...

daptaq
This was written by Yusuke Endoh, who also wrote this submission to the IOCCC that I remember being arguably more astonished when I saw it for the first time: https://www.youtube.com/watch?v=QMYfkOtYYlg (ASCII fluid dynamics).
faitswulff
This issue imploring Yusuke Endoh to write a paper about it is amusing:

https://github.com/mame/quine-relay/issues/10

> p-e-w:

> This is more than a cool program – it's a computer science breakthrough! Apparently, you have discovered a method for constructing quines based on an arbitrary blueprint involving any amount of languages. > > Please write a technical paper describing your approach. I'm sure you'll have no trouble finding a CS journal that will publish it.

> mame:

> Okay I'll submit to the Journal of Universal Rejection.

Later:

> mame:

> I'll soon publish a book, "The world of obfuscated, esoteric, artistic programming". The book explains how to write a uroboros quine. Hence, I proudly close this issue.

> It also contains my almost all (about forty) works, including alphabet-only Ruby program, radiation-hardened quine, etc., and explains many techniques to write such programs.

> You can buy my book on amazon.co.jp. Unfortunately, it is written in Japanese, yet another esoteric language. I hope anyone can translate to English.

tromp
Some background: https://esoteric.codes/blog/the-128-language-quine-relay

Note that the author made the challenge even harder by sorting the languages in alphabetical order:

> According to Endoh, the most challenging transitions were Befunge to BLC8 to brainfuck, as all three are esoteric. It runs through languages strictly in alphabetical order, so there was no opportunity to group easier-to-work-with languages together.

bheadmaster
I am amazed. I have no idea how the hell could the author even do that.

Apparently, they have a book called "The world of obfuscated, esoteric, artistic programming", but it seems to be written in Japanese. I hope it will be translated to English someday, so I may learn this dark sorcery.

drcabana
Last December I had the itch to do some blogging. As it happens, I wrote a four part series that explains in detail how to write quines and quine relays. The initial post can be found at https://drcabana.org/quine/

I am a longtime lurker and finally decided to join in order to comment on this thread. I hope that it is not inappropriate to post a link to my own take on this material. If it is, please accept my apologies and feel free to downvote/flag me out of existence.

belter
I like the Radiation-hardened Quine: https://github.com/mame/radiation-hardened-quine
kubb
Many programmers complain that they can't complete a hello world example in one or more of the languages featured here because they're too difficult.

This guy demonstrated enough understanding of 128 of them to make this work.

Is the difference in competence really so big between us?

Liquix
A work of art :)

Previous discussion: https://news.ycombinator.com/item?id=6048761 (177 comments) (2013)

jmartin2683
It’s amazing what people can do with stuff like this. Such a beautiful language (Ruby) made so ugly yet beautiful when viewed from a higher altitude.. there’s a metaphor there somewhere
siraben
There is an ongoing issue in Nixpkgs[0] to package this quine, more help would be appreciated!

[0] https://github.com/NixOS/nixpkgs/issues/131492

pushedx
One of the languages is Piet. Now that’s insane.
bilekas
This is insane.. I remember when it was only 50 and I was blown away.
enviclash
Code that writes code that writes code... my limited experience combining AWK and GAMS gave me impressively powerful feelings about my limited code. This surely belongs to the next level, I'll go for more!
dwheeler
This article explains the basic idea:

David Bertoldi's "How to write your first Quine program" https://towardsdatascience.com/how-to-write-your-first-quine...

However, that article is a basic introduction. This 128-language quine loop is beyond expert, bordering on magic.

benj111
If it's a 128 language loop is it fair to describe it as ruby?

The other 127 languages presumably have all the information so you should be able to start and end at any language?

I guess in its current implementation the ruby code is the code that ends the loop? But that is optional?

kirjavascript
I wrote a new page describing how to write quines recently[1], but the quine-relay is really above and beyond

1: https://github.com/kirjavascript/quine-howto

mmohtasim
Is there any 2 or 3 language version of this? Like ruby to python to java to ruby?
raydiatian
How exactly does this work? Does one language invoke another and another in a chain, or ruby at the top calling A, then B, then C..

And is that an Ouroboros snake, or something else

avg_dev
I never zoom out on GitHub, but this one time it was kind of neat.
sixothree
The real difficulty is getting 128 languages to compile.
RektBoy
Of course author is from Japan, of course.
ramigb
Now this is how you market a book. cool.
neilwilson
Disappointed there is no Eiffel
debdut
mrtweetyhack
polycaster
But does it run Doom?
sr.ht