Inspired/mostly copied but I don't think it's a dupe. Also Inspired.
In this challenge, you will create polyglots that include all languages from previous answers, and another language which you won't share and others must guess.
The first language prints 1, the second prints 2, etcetera.
For example, if the first answer was this:
You could crack it as Python 3 (or numerous other languages), then you could write another answer that prints 2 in, say, Befunge-93:
2<3 and print(1)#@.2
Then, the next person to answer would first have to figure out that this was written in Befunge-93 before posting an answer that printed 1 in Python 3, 2 in Befunge-93 and 3 in a language of their choice. Feel free to share a crack if you don't want to post an answer.
To keep this challenge fluid, you must reveal your language if it has been uncracked for a week, at which point anyone can post another answer.
Please, be nice and try to post answers in languages which can be easily polyglotted.
The criteria for a valid programming language are the same as those of The Programming Language Quiz, Mark II - Cops:
- It has an English Wikipedia article, an esolangs article or a Rosetta Code article at the time this challenge was posted, or is on Try It Online! (or ATO). Having an interpreter linked in any of these pages makes that interpreter completely legal.
- It must satisfy our rules on what constitutes a programming language.
- It must have a free interpreter (as in beer). Free here means that anyone can use the program without having to pay to do so.
Each answer must run in less than a minute on a reasonable PC.
Different versions of a language / languages with different flags / whatever are valid as long as you can get them to behave differently. However, flags must be revealed to avoid obscure combinations.
Cracking a submission consists of finding any programming language that prints the correct result, not just the intended one. If a submission is run in any language that was not declared or found to work, there are no requirements to do anything, and future answers must be valid in that language.
The program must output a decimal integer, optionally as a float with a
.0 afterwards. Any reasonable amount of leading/trailing whitespace is acceptable, as is stuff unavoidably printed by the interpreter, or formatting for the integer. Anything else is not.
Ending with an error is allowed as long as that error is printed to stderr, and not standard output - it can't be printed with the number.
The person with the most answers wins.