ioccc-src / mkiocccentry

Form an IOCCC entry as a compressed tarball file
Other
28 stars 5 forks source link

Bug report: Will the next contest increase Rule 2b size? #848

Closed SirWumpus closed 4 months ago

SirWumpus commented 4 months ago

iocccsize.h line 51 sets the RULE_2B_SIZE default value to 2503 (a prime), but larger than past contests where the size was 2053 (1st prime after 2048).

#define RULE_2B_SIZE        2503    /* IOCCC Rule 2b */

I don't recall if we discussed a possible size increase for the next contest or if I simply made a typo 2503 vs 2053 when I split out the constants and structures into a .h file.

African or European?

Thank you, sorry (tm Canada :-) ), next steps

You are so welcome. De rien.

xexyl commented 4 months ago

It was increased for the next contest. See commit c58d616d6288ebd08cbbad094d93bb14cfdfbb43.

.. though I'm sure Landon will have more to say.

SirWumpus commented 4 months ago

Well on that note, I've been experimenting with some code and I think if the 2b size is increased, then the 2a size should increase too, else a resurgence of more blob code from the days of yore. If you allow for 2503, then people will want to take advantage of that, but without an increase in 2a size, people are likely to revert compact blob blocks of code again.

Not sure what a good 2a size increase should be? Proportional to 2b? Maybe much larger to allow people to keep their comments in the code or use more interesting libraries where names and types get longish. Maybe try from 4096 to 4906 (similar to change 2053 to 2503). Or in keeping with the prime number theme, 4903 or 4909. Where's the balance?

Thoughts?

lcn2 commented 4 months ago

Thank you @SirWumpus and fair point.

With commit 4c8f0d567156e3e62b72c6e069bb8e36d834019e

The Rule 2a was increased from the pre-2024 prime of 2053 to the 2024 prime of 2503. Now set the Rule 2b to the nearest prime that was closest to the Pre-2020 Rule 2a/Rule 2b ratio.

Pre-2024 Rule 2a/rule 2b = 4096/2053 = about 1.99513

Post-2024 Rule 2a/rule 2b = 4993/2503 = about 1.99481

I.e., RULE_2A_SIZE define in iocccsize.h has been changed to 4993.

As mentioned in the commit message, however:

IMPORTANT NOTE: This change in unofficial. These Rule 2 sizes MAY CHANGE when the rules for the next IOCCC are published!

xexyl commented 4 months ago

Thank you @SirWumpus and fair point.

With commit 4c8f0d5

The Rule 2a was increased from the pre-2024 prime of 2053 to the 2024 prime of 2503. Now set the Rule 2b to the nearest prime that was closest to the Pre-2020 Rule 2a/Rule 2b ratio.

Pre-2024 Rule 2a/rule 2b = 4096/2053 = about 1.99513

Post-2024 Rule 2a/rule 2b = 4993/2503 = about 1.99481

I.e., RULE_2A_SIZE define in iocccsize.h has been changed to 4993.

As mentioned in the commit message, however:

IMPORTANT NOTE: This change in unofficial. These Rule 2 sizes MAY CHANGE when the rules for the next IOCCC are published!

Even so I like the idea (imagine that! :-) )!

SirWumpus commented 3 months ago

Even so I like the idea (imagine that! :-) )!

Must be an affect of "climate change".