22
\$\begingroup\$

The Programming Language Quiz was a Cops and Robbers challenge posted 2 years ago, where users were challenged to create obfuscated Hello, World! programs, and others tried to identify the language(s) in which those programs worked.

The post is currently closed to new cops submissions (although new answers can be posted, there isn't really a point), and given that a lot has changed in 2 years, I believe that posting a second iteration of the challenge could lead to some interesting answers, from languages not yet seen. For instance, there are 216 answers (many of which use the same languages) on the current thread, yet we have almost 400 languages available on Try It Online!, all of which need a Hello, World! program to be added.

However, making the task for a new thread identical to the old one could allow some answers to be ported over (something that people weigh duplicates on) and could also allow accidental posting of similar answers to the old thread, which then get cracked easily, due to the old answer being revealed.

Finally, we do have a consensus that reposting questions is allowed under certain circumstances. That discussion is in regard to answer chaining questions, but (in my opinion) can apply to Cops and Robbers challenges as well.

Overall, I see three potential options:

  • Repost The Programming Language Quiz with the same task
  • Repost The Programming Language Quiz with a different, similarly trivial task.
  • Don't repost The Programming Language Quiz

Of course, answers aren't limited to these three options; if you believe you have another idea, feel free to post it!

\$\endgroup\$
  • 14
    \$\begingroup\$ I do like the idea of doing this a second time, but that's just because I wasn't around for the first time. If we are going to revive it I recommend a different trivial task, as I don't see any reason for it to be the same one. If the challenge is reposted I also think it should be a community wiki. \$\endgroup\$ – Sriotchilism O'Zaic Nov 26 '17 at 20:52
  • 1
    \$\begingroup\$ @WheatWizard Either community wiki, or Martin gets to post it again (if he wants to), in my opinion. \$\endgroup\$ – caird coinheringaahing Nov 26 '17 at 20:53
  • 6
    \$\begingroup\$ @WheatWizard Why should it be CW? (Also, if you do make it CW, all answers will be CW automatically, which isn't great.) \$\endgroup\$ – Martin Ender Nov 27 '17 at 15:57
  • \$\begingroup\$ @MartinEnder Ah I didn't know that answers on CW questions are also CW, that's rather unfortunate. I thought it would be a good idea for it to be CW because it wouldn't really contain any original content, but if answers will be forced to be CW I will have to rescind my suggestion. \$\endgroup\$ – Sriotchilism O'Zaic Nov 27 '17 at 16:00
  • 3
    \$\begingroup\$ With TIO available now, it might be very hard to make a safe submission, because TIO makes it easy to brute force executing the same code in different languages until one produces the right output. \$\endgroup\$ – Laikoni Nov 27 '17 at 22:48
  • 2
    \$\begingroup\$ @Laikoni That just adds to the fun :) \$\endgroup\$ – caird coinheringaahing Nov 27 '17 at 23:21
  • \$\begingroup\$ @Laikoni If we do it, there would be enough time in advance likely for people to make interpreters for any esolangs on the esolang wiki, which would'nt be on TIO. \$\endgroup\$ – Rɪᴋᴇʀ Nov 28 '17 at 3:22
  • 3
    \$\begingroup\$ Another method to avoid TIO bruteforcing is posting an answer requiring more than 60 seconds to be computed. In addition, maybe we could relax the "full program" requirement and allow function submissions, that can't be run directly \$\endgroup\$ – Leo Nov 30 '17 at 7:53
  • \$\begingroup\$ A problem that might come up is character encoding: one could post an hexdump corresponding to code for Jelly, APL, Husk, Charcoal, etc. that couldn't be recognized even by experts of those languages without trying all possible translations. Could a rule like "post your answer using the main human-readable encoding for your language" work? \$\endgroup\$ – Leo Nov 30 '17 at 8:04
  • 1
    \$\begingroup\$ @Leo Those questions would most likely come up if and when the actual challenge is sandboxed. This isn't a challenge proposal, it's "should we have a challenge proposal". \$\endgroup\$ – caird coinheringaahing Nov 30 '17 at 16:05
  • \$\begingroup\$ So, it looks like support for this proposal is unanimous. Time to sandbox it? \$\endgroup\$ – DLosc Dec 4 '17 at 4:40
  • \$\begingroup\$ @DLosc Do we have a task decided on? If so, then sure, Sandbox it. \$\endgroup\$ – caird coinheringaahing Dec 4 '17 at 7:31
  • \$\begingroup\$ Looks like there's support for the "print numbers from 1 to 100" proposal by @Leo. My hesitation is, who should sandbox/post it? Leo? You? Me? Martin? \$\endgroup\$ – DLosc Dec 11 '17 at 21:03
  • \$\begingroup\$ @DLosc I've asked Martin, and he said that one of us should do it (me, you or Leo), and I think that either you or Leo should be the one to write up the post. \$\endgroup\$ – caird coinheringaahing Dec 11 '17 at 22:02
  • 1
    \$\begingroup\$ Sandbox post is here \$\endgroup\$ – DLosc Dec 15 '17 at 10:31
34
\$\begingroup\$

Revive it, with a different task

I would enjoy a Programming Language Quiz Mark II. To keep things interesting, the task should be different.

I suggest a task involving simple integer math, which will 1) allow languages to compete that don't have good string support, and 2) prevent another flood of unintended Foo cracks.

In my opinion, it would be best to choose a task that doesn't involve user input:

  • It's much easier to check the correctness of a solution to a fixed-output problem. Taking input requires verifying multiple test cases.
  • Input methods and formats vary between languages. If the task required input, we would have two options:
    1. Require a specific input format. Inevitably, this would prevent some languages from participating.
    2. Allow a variety of input formats. Each submission would have to specify what format it uses. This clutters the submission and might make it easier to guess the language.
  • Some esolangs can't input decimal numbers, or have trouble with numbers over 255, or don't have input at all.
\$\endgroup\$
  • 15
    \$\begingroup\$ Please, not another Fibonacci question. \$\endgroup\$ – Peter Taylor Nov 27 '17 at 8:13
  • 3
    \$\begingroup\$ I agree with Peter. The task should be simple enough that it can be done in a wide variety of languages and doesn't overshadow the point of the challenge, but not something as overdone as primes, Fibonacci, and the like. \$\endgroup\$ – Mego Nov 27 '17 at 8:57
  • 4
    \$\begingroup\$ Collatz might work. It's also been done a lot, but not nearly as much as Fibonacci or prime checking, and it covers both (variable-length) iteration and branching while remaining very simple (so as not to rule out hard-to-use esolangs). \$\endgroup\$ – Martin Ender Nov 27 '17 at 15:59
  • \$\begingroup\$ @PeterTaylor et al: Fibonacci was just the first thing that came to mind; other ideas are certainly welcome. \$\endgroup\$ – DLosc Nov 27 '17 at 20:22
  • \$\begingroup\$ Add two numbers? Multiply two numbers? \$\endgroup\$ – MD XF Nov 28 '17 at 3:15
  • 3
    \$\begingroup\$ @MDXF I don't think a task that requires input is a good idea. I've edited to more fully explain why. \$\endgroup\$ – DLosc Nov 28 '17 at 4:05
  • \$\begingroup\$ I think the sequence of palindromes would be a good choice. A002113, or maybe generate all palindromes, but not necessarily in that order. \$\endgroup\$ – mbomb007 Nov 29 '17 at 15:40
  • 14
    \$\begingroup\$ What about a simple "print numbers from 1 to 100"? Easy, no input, no strings (unless you really want them), can be done in more than one way \$\endgroup\$ – Leo Nov 30 '17 at 7:55
  • \$\begingroup\$ @Leo Maybe unary output for languages that don't handle integer output well? \$\endgroup\$ – Esolanging Fruit Jan 6 '18 at 0:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .