26
\$\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\$
1

5 Answers 5

42
\$\begingroup\$

Yes

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

\$\endgroup\$
7
  • 1
    \$\begingroup\$ +1 from me (can't vote) \$\endgroup\$ Commented Mar 10, 2015 at 8:37
  • 17
    \$\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\$ Commented Mar 10, 2015 at 8:53
  • 3
    \$\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\$ Commented Mar 17, 2015 at 16:39
  • 1
    \$\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\$ Commented Mar 21, 2015 at 22:36
  • 2
    \$\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
    Commented Mar 30, 2015 at 20:16
  • 1
    \$\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\$ Commented Mar 30, 2015 at 20:29
  • 1
    \$\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\$ Commented Mar 30, 2015 at 20:31
14
\$\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\$
6
  • 2
    \$\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\$ Commented Mar 10, 2015 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
    Commented Mar 10, 2015 at 9:10
  • \$\begingroup\$ How do you close a question??? \$\endgroup\$ Commented Mar 10, 2015 at 9:47
  • \$\begingroup\$ @Jan I think you meant "an answer"? \$\endgroup\$ Commented Mar 10, 2015 at 10:06
  • \$\begingroup\$ Yes indeed, I meant. \$\endgroup\$ Commented Mar 10, 2015 at 10:23
  • \$\begingroup\$ closing in essence, deleting technically. \$\endgroup\$
    – Optimizer
    Commented Mar 10, 2015 at 11:19
10
\$\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\$
3
  • 2
    \$\begingroup\$ +1 Can't vote on my post \$\endgroup\$ Commented Mar 18, 2015 at 3:22
  • 1
    \$\begingroup\$ Umm... does't posting the post imply that you agree with this? These comments are not so popular anymore. \$\endgroup\$ Commented Sep 14, 2016 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\$ Commented Sep 14, 2016 at 14:29
5
\$\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\$
2
  • 1
    \$\begingroup\$ I'd say that's an option that was missing by @Calvin's Hobbies. \$\endgroup\$ Commented Mar 12, 2015 at 21:37
  • 2
    \$\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\$ Commented Mar 16, 2015 at 0:17
-9
\$\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\$
0

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