16
\$\begingroup\$

We have rules about answering challenges with a language that was invented after the challenge was posted.

Can I invent a language to easily solve a challenge that's currently in the Sandbox and then answer with that language once the challenge has been posted?

I doubt this has happened for a whole language but I'd be willing to bet that updates have been made to languages based on bugs found in Sandboxed challenge attempts.

\$\endgroup\$
  • 7
    \$\begingroup\$ Related: Using prior knowledge to circumvent other loopholes \$\endgroup\$ – Dennis Oct 18 '15 at 16:02
  • \$\begingroup\$ "updates have been made to languages based on bugs found" - there is a distinction, although sometimes a fine one, between a language and its reference implementation. It's not the same thing to fix a bug where the reference implementation doesn't follow a clearly written spec as to extend the language itself, modifying the spec. \$\endgroup\$ – Peter Taylor Oct 19 '15 at 8:19
39
\$\begingroup\$

No.

This is similar to updating the language after the actual question has been posted. It's simply no different.

To circumvent this loophole, maybe question askers should put the date at which it was posted in the sandbox and say that programming languages must not have features relevant to the question past the aforementioned date.

\$\endgroup\$
  • \$\begingroup\$ This has my vote. \$\endgroup\$ – Addison Crump Oct 18 '15 at 17:37
  • 5
    \$\begingroup\$ +1, but I don't think posting a "sandboxed on" date is necessary. If it looks to good to be true, it will likely be found out anyway I think. \$\endgroup\$ – Geobits Oct 19 '15 at 16:03
0
\$\begingroup\$

Yes, provided that it's general purpose and doesn't win.

Fixes for unintended behavior in an existing language past a sandbox post date are obviously OK, to address the point about bugs in the OP.

For languages entirely created after a sandbox post date, it depends on two things:

  • The language must be general purpose. That means, you should be able to use it to solve a wide range of other code challenges competitively (what I mean is that it should not be optimized for a single challenge). In most cases, it should also be Turing-complete. Ideally, the language should be specifically for a single tag (eg, a language with lots of string builtins for ).
  • Your submission in that language must not win. Otherwise, it's just unfair for the other challenge participants. If the implementation in your language happens to get the highest score for the challenge, don't post it and just wait for the next challenge within the language's scope. (Note that you should not intentionally leave your implementation ungolfed to submit it without winning. That defeats the purpose of this point.)

The original reason for the standard loophole is to prevent the case of "I invented a language XYZ that does this task in 0 bytes," and to be fair to others. As long as your language doesn't violate those things, I think it's fine.

\$\endgroup\$
  • \$\begingroup\$ I understand that this is an unpopular opinion, however if you disagree an explanatory comment might be helpful. \$\endgroup\$ – DankMemes Oct 19 '15 at 5:47
  • 4
    \$\begingroup\$ I don't think many people could get behind a policy stating that the validity of a code golf answer depends on the other answers. \$\endgroup\$ – feersum Oct 19 '15 at 7:25
  • 1
    \$\begingroup\$ I think you're asking too much by saying that languages should be TC and focussed on a specific tag. \$\endgroup\$ – Peter Taylor Oct 19 '15 at 8:21
  • 4
    \$\begingroup\$ The original question asks about creating a language tailored to the specific challenge (invented "to easily solve a [Sandboxed] challenge"). If I create a language for a specific challenge that doesn't win that challenge, I'm doing something wrong. So I think your answer boils down to "No." \$\endgroup\$ – DLosc Oct 19 '15 at 17:17
  • \$\begingroup\$ We score for the purposes of determining a winner (in principle), so I think saying "Your answer is scored unless it's the winner" is effectively not scoring it at all. \$\endgroup\$ – Esolanging Fruit Jan 10 '18 at 4:40

You must log in to answer this question.

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