25
\$\begingroup\$

A common rule here on PPCG is that programming languages invented after a challenge was posted cannot be used to answer that challenge. (I've had trouble finding a specific meta post that addresses this though.)

This rule makes total sense because without it, someone could "invent" a language that solves any single challenge, essentially automatically.

For example I could "invent" the language riCkroll for this challenge: riCkroll is identical to C except that the empty program outputs the lyrics to "Never Gonna Give You Up". (Modifying an existing compiler to do this would not be that hard.)

The problem I see with this rule is that there may be many perfectly valid languages, not based on loopholes, that were developed after a challenge was posted, and are unduly restricted. For example, I don't think any of us would find it particularly egregious if Mac posted his "99 Bottles of Beer" program to this challenge in my new 99 language (invented yesterday). I agree that it shouldn't be allowed to win (be the accepted answer), just so we can avoid the loopholes mentioned above, but there seems no harm in allowing it to be be posted.

So I'm voting we change the rule of

Languages that were developed after the challenge was posted are not allowed.

to

Languages that were developed after the challenge was posted are not allowed to win.

Do you agree?

\$\endgroup\$
39
\$\begingroup\$

Yes

Languages invented after a challenge should be allowed to be posted, but not be allowed to win.

\$\endgroup\$
  • \$\begingroup\$ +1 from me (can't vote) \$\endgroup\$ – Calvin's Hobbies Mar 10 '15 at 8:37
  • 15
    \$\begingroup\$ I think this has been fairly common practice recently, at least for CJam, Pyth and Marbelous. I'd like to add to this, that if you answer with a younger language, then you should clearly state this in your answer, because otherwise the OP has no way of knowing and might accept your answer anyway. \$\endgroup\$ – Martin Ender Mar 10 '15 at 8:53
  • 1
    \$\begingroup\$ -1 from me. There are some cases where they should be allowed to win. The example given above, shouldn't be allowed to win, obviously, but if I wanted to go back and win a popcon with my awesome marbelous program, I don't see the problem in that. \$\endgroup\$ – Nathan Merrill Mar 17 '15 at 16:39
  • \$\begingroup\$ @NathanMerrill How about allowing them to win popcons but no other types of challenges (where it is impossible to find a general rule for whether the language has been optimised to solve the specific problem at hand). \$\endgroup\$ – Martin Ender Mar 21 '15 at 22:36
  • \$\begingroup\$ Should it apply to those answer chaining questions? I think using Lenguage is still a standard loophole. But how about other newer languages, say, Clip? \$\endgroup\$ – jimmy23013 Mar 30 '15 at 20:16
  • \$\begingroup\$ @user23013 I hadn't thought of those. I'd say that new languages are not allowed for them since the point is to see how long the chain can get and it would be easy to make a language that can keep it going, even if it wouldn't technically win. \$\endgroup\$ – Calvin's Hobbies Mar 30 '15 at 20:29
  • \$\begingroup\$ @user23013 Though, for those answer-chaining questions of mine that are officially over, I won't mind if someone posts an answer in a new language (as long as the language was not just designed for that purpose). \$\endgroup\$ – Calvin's Hobbies Mar 30 '15 at 20:31
15
\$\begingroup\$

Yes and No

These answers can still be posted but should not be considered as a candidate for the accepted answer.

But if a language is specifically designed to have a clear advantage for the question, it should not be considered as an answer and should be deleted. This case would ideally be clearly distinguishable.

\$\endgroup\$
  • 1
    \$\begingroup\$ I think this can be a really fuzzy line. Of course, if it's a case like Ismael Miguel's recent MarioGolf invention which comes with built-ins for quining, it's clear. But then we have some questions that ask for things which have built-ins in many languages (without disallowing those built-ins), where it would be weird to say that the language was tailor-made for this challenge (even if that built-in is a single character). And then there's challenges that can be solved by stringing together 4 or 5 built-ins. Where do you draw the line? I think this is what downvotes are for. \$\endgroup\$ – Martin Ender Mar 10 '15 at 9:02
  • \$\begingroup\$ @MartinBüttner I think the word "specifically", although being subjective, is very clear. Anything which is still not absolutely clear, can be taken up to the community to make a call (deleting an answer takes 3 votes!) \$\endgroup\$ – Optimizer Mar 10 '15 at 9:10
  • \$\begingroup\$ How do you close a question??? \$\endgroup\$ – John Dvorak Mar 10 '15 at 9:47
  • \$\begingroup\$ @Jan I think you meant "an answer"? \$\endgroup\$ – Martin Ender Mar 10 '15 at 10:06
  • \$\begingroup\$ Yes indeed, I meant. \$\endgroup\$ – John Dvorak Mar 10 '15 at 10:23
  • \$\begingroup\$ closing in essence, deleting technically. \$\endgroup\$ – Optimizer Mar 10 '15 at 11:19
8
\$\begingroup\$

Future languages should be allowed to win

Creating or using a language specific to the task is really a loophole, and should be treated as such.

However, with new, useful languages coming into existence and with old languages being improved (C++, CJam, Python), it doesn't make sense to disallow their usage.

Furthermore, in the future, our most popular posts will still get answers, and considering language development will hopefully still be going on, it'll prevent many of our future users from posting/winning.

\$\endgroup\$
  • 2
    \$\begingroup\$ +1 Can't vote on my post \$\endgroup\$ – Nathan Merrill Mar 18 '15 at 3:22
  • \$\begingroup\$ Umm... does't posting the post imply that you agree with this? These comments are not so popular anymore. \$\endgroup\$ – Erik the Outgolfer Sep 14 '16 at 14:04
  • \$\begingroup\$ I still think that future languages should be allowed to win. Regardless, I follow suit with the community, as I didn't get the majority of the votes. \$\endgroup\$ – Nathan Merrill Sep 14 '16 at 14:29
2
\$\begingroup\$

Yes

Languages invented after a challenge should be allowed to be posted, require a statement about that fact and then be allowed to win if the OP like to do so.

\$\endgroup\$
  • \$\begingroup\$ I'd say that's an option that was missing by @Calvin's Hobbies. \$\endgroup\$ – Thomas Weller Mar 12 '15 at 21:37
  • 1
    \$\begingroup\$ I agree they should require a statement about being invented after the challenge was posted, but I disagree that they should be allowed to win. \$\endgroup\$ – trichoplax Mar 16 '15 at 0:17
-10
\$\begingroup\$

No

No languages that were invented after a challenge should ever be allowed in that challenge (unless the challenge author makes an exception).

\$\endgroup\$

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