mame / quine-relay

An uroboros program with 100+ programming languages
13.94k stars 554 forks source link

Statistics of quine-relay #142

Closed rubyFeedback closed 12 months ago

rubyFeedback commented 12 months ago

Hey there mame,

This is just a quick drop-by suggestion; please do feel free to ignore it if it does not fit.

So you kind of have a Matryoshka doll here. Language A creates language B creates language C.

My question is: can we get some statistical information? Just something rough, like "language A took 5 seconds to compile language B, required this or that memory" and so forth. This may not be as useful for single source code stuff, but here I wonder how much complexity is used by this or that language. So a summary statistics would be quite nifty, autogenerated. Perhaps even generating a markdown .md table where people can read the stuff, and this can be shown or linked in from the main README.md.

Anyway, this is not so important, but perhaps you also find it interesting. I just thought it may be nice to see how fast this or that language is, how much complexity is used, how much bytes are stored. Kind of like a ranking charts for all quine-relay related aspects, including fun ideas to generate graphs via emojis and what not (I think I remember you had older quines that had a specific 2D shape, on the commandline, but it may be hard to remember because some of that dates back probably several years and I have not kept track of that in quite a long time).

mame commented 12 months ago

I have thought about something similar. My idea was to show the size of each program in a bar graph. But I don't think I should do such a thing because it would send the wrong message. This is because the task amount of each language in quine-relay does is not fair at all. Most languages simply print a string of the next language, but for example, Ruby takes longer because it assembles program fragments for almost every language; AFNIX generates a large encoded text of an esoteric programming language called Ahuei; Scilab performs slow bitwise encoding of a string to generate a Shakespeare program, etc. A simple comparison of compilation and execution times would mislead people to believe that these languages are slow. Therefore, I do not intend to do this. Thanks for your comment anyway.