Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Programming IT Technology

Get Ready for For The 7th ICFP Programming Contest 18

nate writes "Convinced your favorite programming language provides unbeatable productivity? Convinced you and your friends are world-class programmers? If so, we're providing you the opportunity to prove it! We are pleased to announce the 7th ICFP Programming Contest to be held in conjunction with ICFP 2004. All programmers are invited to enter the contest, either individually or in teams; we especially encourage students to enter. You may use any programming language (or combination of languages) to show your skill." Read on below for the details.

"On Friday, 4 June at 12:00 Noon (EDT), we will publish a challenge task on the Web site and by e-mail to the contest mailing list. Teams will have 72 hours until Monday, 7 June 12:00 Noon (EDT) to implement a program to perform this task and submit it to the contest judges. We have designed the contest for direct, head-to-head comparison of language technology and programming skill. We have a range of prizes including cash awards and, of course, unlimited bragging rights for the winners.

Previous contests included: 2003, 2002, 2001, 2000, 1999 and 1998."

This discussion has been archived. No new comments can be posted.

Get Ready for For The 7th ICFP Programming Contest

Comments Filter:
  • I'm in! (Score:1, Funny)

    by PhuckH34D ( 743521 )
    "unlimited bragging rights for the winners."

    That sounds good!
    I'm in!

  • Excellent! (Score:4, Funny)

    by FattMattP ( 86246 ) on Wednesday April 28, 2004 @11:06AM (#8996431) Homepage
    Now I can show everyone just what intercal [catb.org] is capable of!
  • Cool! Oh damn. (Score:3, Interesting)

    by n1ywb ( 555767 ) on Wednesday April 28, 2004 @11:35AM (#8996753) Homepage Journal
    This looks really cool, a good way to show off your skills. Unfortunately I'm moving that weekend :( Are there any other popular programming contests out there? I remember the 99 bottles of beer contest that got posted here a while back and then never happened. I busted my ass to write my submission in Forth. It was only about 70 bytes and most of that was unavoidable strings like "beer on the wall".
  • by stoolpigeon ( 454276 ) <bittercode@gmail> on Wednesday April 28, 2004 @01:01PM (#8997753) Homepage Journal
    Whenever some relative gets all complimentary because I fixed their pc - or someone tells me I must be smart because I work with computers- I just check out past challenges. Oh yeah-- I can almost hear the ego hissing away as my head returns to normal size.

    Too many liberal arts classes in college I guess

  • by DukeyToo ( 681226 ) on Wednesday April 28, 2004 @01:43PM (#8998277) Homepage
    I am sure this is a fine contest, and the programmer(s) that win will be better than most of the other programmers that entered. However, I do not see contests like this as a true measure of "a good programmer".

    The measure of a good programmer is in the robustness of the solution, in how maintainable it is, and how well its architecture will support future changes.

    A better competition would be a multi-phase one, where the programmers are given several tasks that each build upon the previous solution. Alternately, they could change the problem half way through the competition. Thus, the program (and programmers) would have to be flexible enough to change to meet changing requirements.

    That is what programming is about in the real world, not figuring out an algorithm to find the shortest path between two nodes.
    • Bah, humbug!

      Considering that the ICFP's focus is on functional programming and not the daily tribulations of the real-world programmer, I think their competitions are just fine.
    • Re: Best maintainer? (Score:4, Interesting)

      by phamlen ( 304054 ) <phamlen@@@mail...com> on Wednesday April 28, 2004 @02:24PM (#8998861) Homepage
      I would love to see a contest where you judge the best "maintainer" of code. Because maintenance programming (taking someone else's code and improving/modifying it) is a totally different beast than orginal programming.

      I think an interesting programming challenge would be a multi-phase contest, where each team works on a different team's program in each phase. For instance:
      * Phase 1, everyone creates a program to accomplish Goal 1.
      * Phase 2, everyone gets someone else's program and must modify it to accomplish goal 2.
      * Phase 3, each team takes yet another Phase 1 program and modifies to accomplish goal 3.
      * Phase 4, etc...

      At the end of the contest, you could determine lots of things:
      * Who's the best designer (based on how a phase 1 design did in the later phases)
      * Who is the best maintainer (based on how well the team did on goals 2-4)
      * If you allow different languages, you might even be able to measure whether one language is more maintainable than other languages...

      • by anomalous cohort ( 704239 ) on Wednesday April 28, 2004 @04:27PM (#9000458) Homepage Journal

        I like it. Here's another, less reverent, variation.

        • Get any book written in the early 90s on object oriented programming. The more academic, the better.
        • Write a complex system that makes heavy use of everything in that book. Absolutely everything.
        • Publish this as part of the instructions. Describe a fairly modest change as the objective of the competition.
        • State that the winner will be assigned based on as small and accurate a change as possible.
        • Accept submissions.
        • Bring each submitter in for in interview. Hook him or her up to a blood pressure monitor and say "Why did it take you so long to make such a modest change to such a well designed system?"
        • The contestant with the smallest increase in blood pressure wins.
      • by hsoft ( 742011 )
        If a contest like this would exist, to win, you would have to produce unmaintainable code on phase 1. I don't like that. I prefer the idea of the top parent: Create code to accomplish a goal, and then ask to morph that code to accomplish another goal, which is related, yet very different. Yet, another option would be to make exactly the same thing as you mentioned (Phase 1,2,3,4) but use different teams for each phase. Thus, you would have to chose which phase you want when you suscribe, and then, the prize
        • Well, although in theory someone could do this, I don't think it really gives them an advantage.

          1) The malicious team would lose all chance at "best design." My personal experience suggests that THAT prize will be most valuable.
          2) The overall prize ("best programmer") should be a composite score, including the design score of the team's phase 1 entry plus their combined maintenance scores of the other phases. Thus, the malicious team almost certainly gives up all chance of winning the overall score.
    • by Anonymous Coward
      The ICFP contest is primarily meant to be about having fun, and secondarily about giving exposure to functional programming languages.
      You seem to want a contest that reliably measures how "good" a programmer is. I'm not sure how to do that, but I am pretty sure that it wouldn't be very much fun.
    • I do not see contests like this as a true measure of "a good programmer"

      well, you'd be right. It's a test of languages and speed. I don't think that the best programmers will win. This a speed test, pure and simple. And the ability to code quickly is a good skill when combined with the ability to write maintainable code and with initial comprehension of the problem.

      I could probably code a problem given to me in C++, Java, VB, C#, LISP or *shivers* some basic scripting languages, but really there are two

  • Wow, a contest that I can enter a Unlambda [eleves.ens.fr] program in... :)
  • The results and strong entries for this competition are always an interesting read, so best of luck to everyone entering.

    Just one niggle, though: last year, the first and second places were actually taken by entries using C++. I hope this year's proclamations [chalmers.se] won't suffer another unfortunate delay if the winner happens to be a non-functional language.

    You can judge for yourself whether that pun was intended. :-)

Things equal to nothing else are equal to each other.