19
\$\begingroup\$

This question already has an answer here:

This is a follow up to Can I ever answer with a language invented after the challenge was posted? It seems to be well established that you can post answers using a new language, but you can't win.

What about new versions of the same language? For example, if Pyth is updated, can I use the new version of Pyth to answer old challenges?

\$\endgroup\$

marked as duplicate by Martin Ender Jun 19 '17 at 10:35

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • \$\begingroup\$ One specific issue that might arrise with new versions of Pyth is that I have often added features to Pyth based on old challenges. \$\endgroup\$ – isaacg Jun 19 '15 at 12:54
  • \$\begingroup\$ @isaacg I think that's why Martin's answer has so much support. \$\endgroup\$ – Rainbolt Jun 19 '15 at 13:07
40
\$\begingroup\$

I would apply the same rules as to a new language, because it opens the same loopholes as using a newer language: any language author could just patch in a handy built-in to solve the challenge.

So yes, you can post it, but no your answer is not eligible for being accepted. Hence, answers using newer versions should add a disclaimer to the answer to inform the challenge author that their answer is not eligible for winning.

\$\endgroup\$
  • 1
    \$\begingroup\$ What if the new version is simply a bugfix, and the desired behavior of the language has been clearly described in the documentation prior to the challenge? I've seen a few CJam entries for which the official interpreter worked at the time of the challenge but the online interpreter did not, and I think there was even one (Pyth maybe?) that was ruled as ineligible because it didn't run correctly due to a flawed interpreter. \$\endgroup\$ – lirtosiast Jun 22 '15 at 1:33
  • 2
    \$\begingroup\$ @ThomasKwa As long as there is a working interpreter it's definitely fine (even if there are buggy ones). But I believe that if there was a bug in both CJam interpreters I've never assumed the bug didn't exist. So yeah, I think we should always require that the code works as given in at least one interpreter that existed when the challenge was posted. \$\endgroup\$ – Martin Ender Jun 22 '15 at 8:50
  • 4
    \$\begingroup\$ What if an interpreter for the old language version is nowhere to be found? To which extent may I assert it would have worked in the old version? \$\endgroup\$ – John Dvorak Jun 23 '15 at 15:08
  • 1
    \$\begingroup\$ @JanDvorak, if you don't have a copy to test it, don't make the claim. \$\endgroup\$ – Peter Taylor Dec 19 '15 at 20:35
  • 1
    \$\begingroup\$ @peter that would mean I couldn't participate in older challenges at all. Browsers update constantly and are a nuisance at best to downgrade, with online interpreters you can never be sure and even offline languages sometimes get updated and I am sure to forget when the last update was - and even if it was possible to look up when each version came out and old interpreters were still available, it's not easy to maintain and manage multiple versions at the same time. \$\endgroup\$ – John Dvorak Dec 20 '15 at 5:31

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