* Ton Hospel <[EMAIL PROTECTED]> [2003-08-31 08:38]:
> > I guess it isn't clear to me how to interpret rules 12 and 13 of the generic
> > rules, and how they should be applied.  I interpreted rule 12 to mean that your
> > program can use up to 2**32 bytes (about 4GB) of memory - basically, that it
> > must not require infinite amounts of memory and that 2**32 bytes is an upper
> > limit.
> 
> No. Rule 12 says you have *definitely less* than 4G (which guarantees
> that 32-bit addressing will work), but it doesnt say how low. Your
> interpretation is exactly backward. If you could use up to 4G it would say
> "memory is >= 2**32" or "memory = 2**32"

I understand now that the point of the rule is to state the assumption that
memory addresses are 32 bits.  But I don't think my interpretation was
unreasonable, or "exactly backward".  If someone says, "You have less than 10
minutes to complete this task", how much time would you think you have?
Probably somewhere close to 10 minutes, right?  At any rate, the intent of this
rule (32-bit addresses) seems obfuscated by the phrase "total memory", so maybe
it should be rewritten, but it's not a major point.

> So that's why it has this formulation. You get to build data of a
> few million "thingies", and leave the meaning of "few" and "thingies"
> open for discussion in the edge cases.

Yeah, I'm not sure what the best solution is without spoiling the fun, but rule
disputes like this aren't too fun either :-)  I hate to see working solutions
rejected (even if they weren't my own) based on the definitions of "few" and
"thingies"... but then again, the line has to be drawn somewhere.  If there
were some exact criteria for rejection, that would be preferable.  But I don't
know what those criteria would be.

> > My 47 solution uses 229M.  Is that too much?  We should probably clarify
> > exactly how much is too much.
> 
> This represents the real maximum case with the minimal short multiplier:
> perl -wle '$_="s/". "a" x 80 . "/" . "b" x 80 . "/;";$_ x= 2e4*10; eval'
> 
> This uses 364M on my perl 5.8.0
> 
> The rules try to avoid using real memory. But even then your 5e6 is already
> pushing "a few million", and this uses about 3 times as much. That's clearly
> over the edge.

Well, maybe... the not unreasonable program "@h{0..3e8}=0..3e8" uses 535M of
memory on my system although it only uses 3 million hash entries.  It seems to
me that a program that runs in a reasonable time on a system with a reasonable
amount of memory ought not to be rejected.  What is reasonable is open to
interpretation, and of course a "reasonable" amount of available memory may
increase with time.  Maybe there could be an "official" system with an
"official" build of Perl on which potentially-rejectable solutions can be
tested?  I doubt it would need to be used very often, but at least it would be
available for situations like this.

I'm a practical guy.  To be honest, calculating the maximum size of theoretical
inputs is not my strong point.  I understand that it's the responsibility of
the golfer to submit solutions that satisfy all potential valid inputs, not
just the ones in the test suite.  At the same time, the inputs that really
started pushing the limits only showed up in late versions of the test suite
(just version 9?), within the last day or so.  I can't say for sure, since I
didn't keep older versions of the test suite, but I think the solutions under
scrutiny may have been passing test suite version 8 just fine.  Does the test
suite itself carry any weight when determining whether to reject solutions?

> > Anyway, whatever we decide about rejecting solutions, I had fun on this hole!
> > It's good to be golfing again.
> 
> Indeed, it seemed like a good hole, I was sorry to have missed it.
> But it also was a very messy hole, so I'm glad I'm not the judge on
> this one :-)

Me too :-)  I feel like I'm "defending my solution", but I think my views would
be the same no matter whose solution was on the line.  I don't like rejecting
working solutions without a clear reason, and to my mind anyway, this case
seems to fall into the fuzzy area.  Regardless, what is actually decided
doesn't matter too much... I'll just be glad when the next contest starts!

-- Mike

-- 
Michael W. Thelen
But you have to allow a little for the desire to evangelize when you think you
have good news.
    --Larry Wall in <[EMAIL PROTECTED]>

Reply via email to