Slashdot Mirror


ICFP Contest 2004 Date Set

Bbazzarrakk writes "It's still a little ways off yet, but a date for the 2004 ICFP Programming Contest has been set. If you're like me, you need a little warning to plan for it and avoid missing it. The contest will begin Friday, June 4th at noon. For more information, keep an eye on The Official Contest Site."

3 of 17 comments (clear)

  1. ICFP by Nighttime · · Score: 3, Interesting

    International Conference on Functional Programming, in case you were wondering.

    Does the Functional Programming part of the name preclude using object-oriented languages I wonder?

    --
    I've got a fever and the only prescription is more COBOL.
    1. Re:ICFP by mvw · · Score: 2, Interesting
      Last year, for the first time, they let you run your code on your own hardware, and simply submit the results. The winner ran his simple C++ algorithm on a farm of dual processor machines, and managed to brute force his way into first place.

      The problem of last year's contest was implementing the simulation of a formula one racing car.

      Then you had to determine a set of control commands (steer left, right, accelerate, break) to stear it through a racing track from start to finish, which depending on the geometry of track could be quite tricky.

      It is a bit sad that brute forcing gave the best results. I still believe using theory of optimal control would have been the way to go, on the other hand for the hairy track I don't know if that would work out.

      I was very surprised that the organizers chose that kind of problem. Using the functional programming languages forbid destructive updates, thus once a variable got a value bound to it, that sticks. On the other hand most of the mathematical algorithms I know make rather much use of destructive updates.

      Don't know yet, if I am still to stupid to see the way how to do numerics with a functional language or if these are not as well suited for such problems like C++ or FORTRAN.

      By not allowing destructive updates you keep all intermediate results of a computation. So you can't brute force as much, as with C++.

      This is rather strange, so I believe the organizers had some clever tricks in mind that not relied on brute forcing (like that theory of optimal control) and we participants were just too stupid to know. :-)

      Regards,
      Marc

      PS I submitted that item days before twice and got rejected, does anyone understand the editorial policy of Slashdot?

  2. summary of past contest results by Anonymous Coward · · Score: 1, Interesting

    First places in the main category since the contest began:

    1998: Cilk (parallel C)
    1999: OCaml
    2000: OCaml
    2001: Haskell
    2002: OCaml
    2003: C++

    All languages can participate, in fact very many do, but as you can see, a "dynamically-typed" (misnomer) language never took the first place in the main category. Common Lisp and Scheme never took any of the first 3 places.