On Sun, Sep 08, 2002 at 09:11:55PM +0200, Eugene van der Pijll wrote:
> I agree with you, partially. But a course can also be too hard. We have
> had courses in the past with more beginners than veterans. I'm afraid
> that the hole was too difficult for most beginners this time. Next month
> should be an easier hole, probably.

The difficulty was my main fear, but the consensus amongst the
referees seemed to be that the problem was interesting enough to
balance the difficulty. I think we also had some grade-A self-delusion
there, along the lines of "it's easy to find an algorithm for this
using Google, so lots beginners are likely to enter".

> In fact, this month's hole was so difficult that after a days work I
> still had no working solution. Unfortunately, my attempts failed at the
> longest test, and I nearly gave up on this hole.

Yeah, The maximum input size was too long. All of the same benefits
could have been gotten with (say) 1000 characters. I don't think it
cut out many strategies due to performance, but some of the regexp
trickery was apt to segfault in the longest tests [1]. Also testing
took too long.

And while we're talking of problems... Some things that future
golf referees (and players) might want to consider:

  * The long autogenerated tests were a partial failure. They probably
    caught most of the bugs that weren't related to the handling of
    whitespace or negative numbers. However, they were too difficult
    to debug. Some tests of about 100 characters should also have been
    autogenerated, with all numbers being unique (for easier testing).
    
  * The examples shouldn't have only shown a few examples of the 
    transformation, but also included the main features of the spec 
    as it had been intended. Most of the rule-related problems could
    have been avoided had there been examples showing leading zeros,
    and whitespace in all allowed positions.
    
  * The "assume 2**32 bytes of memory" and "run in reasonable time on
    spec machine for any input" rules probably conflicted. Luckily,
    all of the programs that used unreasonable amounts of memory were
    also unreasonably slow for other reasons.
    
  * I promise that the next time I'm playing, I'll write down a 
    description of my algorithm in the comments of the first
    submission. And possibly more details on the changes.  Trying to
    figure out what some of those programs were doing was painful. Of
    course this isn't as bad with 50 stroke programs.

[1] The most cruel case being Greg Allen's solutions under 200. The
    code worked on Activestate, but segfaulted on stock 5.6.1 on
    Linux. No experimental regexp features. And it would have worked
    with a maximum input size of 9980!

-- 
Juho Snellman

Reply via email to