Skip to main content
deleted 1 character in body
Source Link
Wheat Wizard Mod
  • 100k
  • 1
  • 41
  • 84

Consider if your challenge really needs random output

Challenges that require output, require extra clarifications that challenges with deterministic output do not, and additionally exclude langaugeslanguages with no source of non-determinism.

Often times randomness only acts as a cumbersome output format, adding the randomness boilerplate from whatever language (or preventing submissions in that language).

At the same time there are few benefits that it provides to a challenge.

If there are a finite number of valid outputs for every input (which seems to be the majority of challenges) you can change a challenge from

Generate a random X

to

Output all Xs

Of course there are other ways to remove unnecessary randomness, for example if challenges of the form:

Generated a random X that satisfies property Y

often (but not always) break down into two challenges

Generate a random X

and

Given an X determine if it satisfies property Y

And you will often find a more worthwhile challenge in one of these two (or both).


Of course there are challenges that are best with random outputs. The clearest case of this are challenges that ask to generate output with a specific distribution, where meeting the specific distribution is the challenge.

Some examples of such challenges

Consider if your challenge really needs random output

Challenges that require output, require extra clarifications that challenges with deterministic output do not, and additionally exclude langauges with no source of non-determinism.

Often times randomness only acts as a cumbersome output format, adding the randomness boilerplate from whatever language (or preventing submissions in that language).

At the same time there are few benefits that it provides to a challenge.

If there are a finite number of valid outputs for every input (which seems to be the majority of challenges) you can change a challenge from

Generate a random X

to

Output all Xs

Of course there are other ways to remove unnecessary randomness, for example if challenges of the form:

Generated a random X that satisfies property Y

often (but not always) break down into two challenges

Generate a random X

and

Given an X determine if it satisfies property Y

And you will often find a more worthwhile challenge in one of these two (or both).


Of course there are challenges that are best with random outputs. The clearest case of this are challenges that ask to generate output with a specific distribution, where meeting the specific distribution is the challenge.

Some examples of such challenges

Consider if your challenge really needs random output

Challenges that require output require extra clarifications that challenges with deterministic output do not, and additionally exclude languages with no source of non-determinism.

Often times randomness only acts as a cumbersome output format, adding the randomness boilerplate from whatever language (or preventing submissions in that language).

At the same time there are few benefits that it provides to a challenge.

If there are a finite number of valid outputs for every input (which seems to be the majority of challenges) you can change a challenge from

Generate a random X

to

Output all Xs

Of course there are other ways to remove unnecessary randomness, for example if challenges of the form:

Generated a random X that satisfies property Y

often (but not always) break down into two challenges

Generate a random X

and

Given an X determine if it satisfies property Y

And you will often find a more worthwhile challenge in one of these two (or both).


Of course there are challenges that are best with random outputs. The clearest case of this are challenges that ask to generate output with a specific distribution, where meeting the specific distribution is the challenge.

Some examples of such challenges

Source Link
Wheat Wizard Mod
  • 100k
  • 1
  • 41
  • 84

Consider if your challenge really needs random output

Challenges that require output, require extra clarifications that challenges with deterministic output do not, and additionally exclude langauges with no source of non-determinism.

Often times randomness only acts as a cumbersome output format, adding the randomness boilerplate from whatever language (or preventing submissions in that language).

At the same time there are few benefits that it provides to a challenge.

If there are a finite number of valid outputs for every input (which seems to be the majority of challenges) you can change a challenge from

Generate a random X

to

Output all Xs

Of course there are other ways to remove unnecessary randomness, for example if challenges of the form:

Generated a random X that satisfies property Y

often (but not always) break down into two challenges

Generate a random X

and

Given an X determine if it satisfies property Y

And you will often find a more worthwhile challenge in one of these two (or both).


Of course there are challenges that are best with random outputs. The clearest case of this are challenges that ask to generate output with a specific distribution, where meeting the specific distribution is the challenge.

Some examples of such challenges