Slashdot Mirror


Second Annual ICFP Programming Contest

PsionV writes "The second annual ICFP Programming Contest begins September 2nd. For those of you who didn't participate in this last year, this is a contest where competitors enter programs written in any language which then compete tournament style against each other in a processing intensive task to possibly win money, books, bragging rights, and more. "

69 comments

  1. Re:stupid hemos on late announcement by Anonymous Coward · · Score: 0

    Hey, my post has been censored!

    I thought even censored posts can be read by those interested, but apparantly not in my case.

    What do you mean I'm abusive? Yes, my post contains euphemized four-letter words, but that's nothing compared to the slashdot posts. In particular, my post is not a brainless babble like many other posts are.

    I wouldn't suprised if my post would be censored or offensive on somewhereelse. But I wrote it for Slashdot. Slashdot being slashdot, I think I deserve a public note why my post is censored out of sight! If you start to censor people who doesn't agree with you or who doesn't like hemos or robs, you should make such policy explicit.

    Xah
    , xah@best.com
    , http://www.best.com/~xah/PageTwo_dir/more.html

  2. Re:"Performance *may* matter." (in the judging!) by Anonymous Coward · · Score: 0

    This contest definitely does reflect practical job skill. The team that won last year was composed of a number of individuals who do research on the kinds of probems reflected in the contest, no wonder they won. Additionally, The contest is set up as a functional programming contest. One of the main goals of functional programming languages is to be able to rapidly implement complex algorithms, and to develop prototpes as fast as possible. The contest is a way of testing how well functional programming languages, as well as others, are at this task.

  3. PsionV Must Die! by Anonymous Coward · · Score: 0

    Yeah, that PsionV guy needs the shit beat out of him. I'll be he's an arrogant dick who spends all his time on IRC bragging about how good he is.

    And I bet he takes over programming sites, runs them like a dictator, and then gives up on them. And then complains about the new people who run them.

    Let's string the fnord bastard up!

  4. Re:stupid hemos on late announcement by Anonymous Coward · · Score: 0

    Thank you to DragonHawk or whoever that put my censored post back. (refering to the parent message of this thread)

    Now I can post with better confidence and more repect for slashdot runners.

    (don't take my posts *TOO* serious. Afterall, we all enjoy a bit flames here and there on slashdot.)

    An earlier poster (DrGoon) asked why I post as anonymous yet disclose my webpage url. I do not wish to have an 'account' on slashdot yet I'm not "anonymous coward". You see, this is a fault of slashdot's false dichomy, but well... if slashdot isn't the podium of cheesy balls and sophomores, where would the fun be? (^_^)

    Xah
    xah@best.com
    http://www.best.com/~xah/PageTwo_dir/more.html
    "GNU is Not stupid Unix"

  5. Re:functional langauge by Anonymous Coward · · Score: 0
    What dougb said. But also -- if you had just followed the link I posted to haskell.org, there is actually an explanation right there! I quote:
    What is functional programming?

    C, Java, Pascal, Ada, and so on, are all imperative languages. They are "imperative" in the sense that they consist of a sequence of commands, which are executed strictly one after the other. Haskell is a functional language. A functional program is a single expression, which is executed by evaluating the expression. Anyone who has used a spreadsheet has experience of functional programming. In a spreadsheet, one specifies the value of each cell in terms of the values of other cells. The focus is on what is to be computed, not how it should be computed. For example:
    • we do not specify the order in which the cells should be calculated - instead we take it for granted that the spreadsheet will compute cells in an order which respects their dependencies.
    • we do not tell the spreadsheet how to allocate its memory - rather, we expect it to present us with an apparently infinite plane of cells, and to allocate memory only to those cells which are actually in use.
    • for the most part, we specify the value of a cell by an expression (whose parts can be evaluated in any order), rather by a sequence of commands which computes its value.

    An interesting consequence of the spreadsheet's unspecified order of re-calculation is that the notion of assignment is not very useful. After all, if you don't know exactly when an assignment will happen, you can't make much use of it! This contrasts strongly with programs in conventional languages like C, which consist essentially of a carefully-specified sequence of assignments, or Java, in which the ordering of method calls is crucial to the meaning of a program.

    This focus on the high-level "what" rather than the low-level "how" is a distinguishing characteristic of functional programming languages.

    Another well-known nearly-functional language is the standard database query language SQL. An SQL query is an expression involving projections, selections, joins and so forth. The query says what relation should be computed, without saying how it should be computed. Indeed, the query can be evaluated in any convenient order. SQL implementations often perform extensive query optimisation which (among other things) figures out the best order in which to evaluate the expression.
  6. Re:Language statistics by Anonymous Coward · · Score: 0

    That's a damn good point. I retract my statement. :)

  7. Clustered pentiums? by Anonymous Coward · · Score: 0

    Are these guys running beowulf or something? What I would like to know is can I use pthreads, e.g. make my program multithreaded? If I could then this competition really would be cool. Program in C++, who needs perl anyway?

  8. Curry or closure? Re:functional langauge by Anonymous Coward · · Score: 0

    Err, why do you call that a curry whereas it's actually a closure? And that denomination has been in use for quite some time now ...

  9. Re:"Performance *may* matter." (in the judging!) by Anonymous Coward · · Score: 0

    Why? You don't think there's more (a whole hell of a lot more) to good programming than performance?

  10. Re:Perl banned by Anonymous Coward · · Score: 0
    Does anyone remember the programming contest sponsored by some west-coast university that banned Perl? Apparently, using Perl, a student completely thrashed the competition; therefore, Perl is now a no-no.

    Well in this competition, perl is still allowed as far as a can tell. It didn't at all trash the competition last year. Hell, even my own Python entry did much better than Perl ones :-).

  11. Re:Does anyone know... by Anonymous Coward · · Score: 0
    ...what last year's problem was?
    Google knows... but for those who can't be bothered searching for it themselves, last year's question involved playing a variant of tic-tac-toe.
  12. Re:Embarrasing Code by Anonymous Coward · · Score: 0

    Yes, though it's usually not until I'm looking at my own code over someone else's shoulder. Is similar to how I don't notice just how messy my apartment is until someone steps in the doorway. "...it's not normally like this...really...I've just been too busy cleaning/coding lately..."

  13. Re:pre-written code? by Anonymous Coward · · Score: 0
    So you mean nobody, prior to this contest, had implemented a program to play Pousse? I suppose it's an obscure enough game that it would be possible, I just would've expected nearly every game to have a least some sort of program playing it by now...

    The pousse game might have been invented specifically for the contest ; anyway, none of the top performers had implemented it before.

  14. Re:Language statistics by Anonymous Coward · · Score: 0
    looks like there was barely enough perl representation to give it a good chance. but doesnt that also say something about it? perl really isnt designed for tasks like this.

    Well, there was also exactly one Python/C++ entry (mine :-), and it didn't do too bad. Don't forget that developpement speed matter, as much as speed, and this is where Python, Perl, Lisp, Smalltalk shine, and Caml, and functional languages shine a bit less. For instance I coded the core move generation in C++, and interfaced painlessly it with Python: I had a huge performance penalty, but on the other hand I was able to implement alpha-beta and iterative deepening with move pre-sorting, which I wouldn't have time to write (and debug!) en C++. The result is that my slow but somewhat clever entry has beaten brute force C entries.

    im sure ill be using c, but if i get to the last 2 hours and dont have anythign to submit yet, then ill just write a simple little perl script to get the job done.

    But the problem probably won't be solved by a perl script written in two hours. More, in the pousse contest it would have been very useful, to have a first prototype to play with, to understand how the game should be played. If the problem has something fuzzy what requires good heuristics, then speed isn't important alone.

  15. Re:Perl won't win for performance reasons. by Anonymous Coward · · Score: 0
    it's not designed to win contests like this, where the winning entry will almost certainly be CPU-bound in some central computing core.

    Yes but you forget that at the same time, the contest is development time-bound, and that it is much faster for a experimented Perl developper to code in Perl than in C.

  16. Re:Poor Students by Anonymous Coward · · Score: 0
    You can have skill and abilities without a degree. Or with one. All the entries should be in a single competition, as they were last year.

    Unless they ask you to write a simulation of a black hole, with 1e-5 error precision and as fast as possible. In that case you need to be very well booked up about relativity, gravity, and numerical integration schemes.

  17. Re:functional langauge by Anonymous Coward · · Score: 0

    Functional programming languages have many real world applications. Companies such as Erickson rely heavily on functional programming languages. Functional programming languages are also widely used for rapid prototyping. I suggest you browse through a text on functional programming, or programming languages in general, almost all recent ones contain at least some information on the uses of functional programming. Additionally texts on software engineering often discuss the use of functional programming languages in the development cycle. If you're too lazy to trek on down to a library, you could also find answers in the newsgroup: comp.lang.functional. Your questions arise repeatedly there.

  18. That obfuscated Perl code contest... by Anonymous Coward · · Score: 0

    Do anybody have the URL? I lost it in a nutscape crash.

    1. Re:That obfuscated Perl code contest... by Anonymous Coward · · Score: 0

      You said: "The impression that Perl produces worse code than other languages usually comes from the hurdle of being able to visually guage regular expressionsand grasp context-sensitivity."

      Correct me if I'm wrong, but aren't regexps touted as on of PERL's strengths. Similarly, isn't Larry Wall quite proud of the context sensitivity in the language. In other words, if the above statements are true (I believe they are), it seems silly to try to "code around" them for maintainability's sake. To put it more simply, if you are discouraged from using touted features of the language because they make programs unmaintainable, why bother using the language.

      WRT: an obfuscated LISP programming contest, it might be true that obfuscated LISP would be nasty. However, it doesn't really seem like a fair comparison. I suspect there is a _huge_ chasm of experience between an "average" LISP programmer and an "average" PERL programmer.

      To be snotty about it, I'd say most (not all) PERL programmers only understand how to _use_ perl's hash tables, while most (again not all) LISP programmers could implement perl's hash tables.

    2. Re:That obfuscated Perl code contest... by platinum · · Score: 1

      There is a link on the main page of The Perl Journal.

    3. Re:That obfuscated Perl code contest... by ajs · · Score: 1
      Being a previous 2nd-place winner of said contest as well as a Perl programming courseware designer and instructor, I have to disagree. It is no easier to write bad code in Perl than it is in say, C++, TCL, sh, VisualBasic or LISP. Anyone who doubts this should create an Obfuscated LISP Programming Contest, and attempt to read one of the entrants....

      The impression that Perl produces worse code than other languages usually comes from the hurdle of being able to visually guage regular expressions and grasp context-sensitivity. I try to code with these two hurdles in mind (both for abuse in contests and for maintainability at work), and things work out quite well. But, I've learned to think in Perl, so even "bad" Perl is more readable to me than "good" C++ (which I program in, but do not yet think in).

      My favorite obfuscated contest entry is still my C/LISP combo which printed "Hello, world" with only one copy of the string in the code. It would run under EMACS LISP or compile as C code. Fun stuff, that!

    4. Re:That obfuscated Perl code contest... by John+Campbell · · Score: 2

      "Obfuscated Perl"? Isn't that redundant?

      Yeah, I know... it's possible to write good Perl... it's way too easy to write bad Perl, though. You should see the mess I inherited at work...

  19. Re:Language statistics by Anonymous Coward · · Score: 0
    The Haskell Homepage

    Haskell is a lazy, pure functional language. It kicks ass.

    I wish the people who ran the contest at least required that the entered programs be written in a functional style. 24 C entries in a supposedly functional programming contest? The winning group did use a pretty cool parallel dialect of C, but it was certainly not functional.

  20. Re:functional langauge by Anonymous Coward · · Score: 0

    > "Functional" programming looks like a subset > of object-oriented programming. . . I think it is more the other way around--the OO is a subset of functional programming using closures. Honestly, I believe it depends on what you learned first. Depending on the implementation, a functional programming language can have some pretty amazing features that exist generally clumsily in more mainstream programming languages (am I the only one who's noticed that using function pointers in C is a pain in the a**).

  21. Re:basic by Anonymous Coward · · Score: 0
    wonder how long a basic program would last? I'm betting that such an entry (I'm halfway considering entering one) would be instantly disqualified just on general principle =)

    Not necessarily. Last year an entry written in "J" (a derivative from APL) won the judge prize. Look at the source code of their entry, you'll find the reason.

  22. Re:Obfuscated Scheme by Anonymous Coward · · Score: 0
    Okay, I have to ask, and this isn't a flame, but what do people see in Scheme?

    After some time, you don't see at all all the parenthesis. No more than you see the '{' and ';' everywhere in 'C' code. And I suspect that there is amount of syntax clutter for C is greater than 50% of the Scheme syntaxic clutter, and probably the syntax clutter of Scheme is comparable to the syntax clutter of Perl. Just do this: count the useless characters in the same program written in both languages. Filtering out those is just a matter of training.

    Perl was a little obtuse initially, but not a difficult language to learn.

    The problem with Perl is that what is obtuse is not only syntaxical. If you have to put '$' before any variable, it would be ok, but there are '%', '@', depending on what you do. There is semantic clutter.

  23. functional langauge by Anonymous Coward · · Score: 0

    im sorry, but what is meant by a functional language? C uses functions, right? is that not what is meant by a functional language. hmm, i guess not.

    please help set me straight on this.

    1. Re:functional langauge by dougb · · Score: 1

      ftp://rtfm.mit.edu/pub/usenet/comp.lang.functional /

      Search engines are your friends, please use them.

    2. Re:functional langauge by the_dk · · Score: 1

      with all that being said, what then is the advantage of a functional language? it would appear to me (in my staggering ignorance) that they are primarily usefull in hiding the programmer from some of the gory details of the programming by making it higher level.

      while it is obvious that this speeds up development time, does it really improve execution speed over a well written algorithm? it seems to me that maybe one line of haskell code might be able to do what 10 lines of C code can (maybe even in a loop or recursively), but in order to get the job done, isnt the haskell gonna have to do just as much underneath?

      also, (and please flame me if im wrong) but dont i remember being told in a programming class that 1.) anything that can be done recursively can be done iteratively, and 2.) that recursion (while often easier to code) is usually not the most efficent solution. ? im still very confused. can anyone help me on why/how functional programs would be faster? (or maybe im misinterpreting the idea of why they were suggested to be used in this contest)

      dont think that im trying to put functional programming down, im still learning what it is. i just want to understand more, and i find these /. discussions an excellent place to learn.

    3. Re:functional langauge by Hard_Code · · Score: 1

      However nice it may be to think of this theoretically, what USE is it? Why would I ever NOT want to use assignment when it is applicable? "Curry"ing looks like it can be done in any language (FOO = "bar"; g(x) { f(x, FOO) };
      "Functional" programming looks like a subset of object-oriented programming, in which the only objects are functions...what use is that? I can't help but thinking that this is shooting yourself in the foot. If we banished all circular objects from the RL world, it probably would lead to very interesting solutions and phenomenon, but /why/ would we ever want to do such a thing (besides as an academic thought problem)?

      --

      It's 10 PM. Do you know if you're un-American?
    4. Re:functional langauge by BlaisePascal · · Score: 1

      Crudely put: functional programming is based on the idea that any computation can be represented as a function, according to the standard definition of a "general recursive function" from algebra.

      Mathematically, a function takes an input and maps it to an output -- given the same input, it will always give the same output. There is no hidden state: the black box always works the same way. Things like random number generators (which produce a different result each time called) aren't true functions.

      Functional programming takes that idea and uses it to program. Usually, there is no "state" at all, enforced by the lack of assignment. Variable binding usually takes place through "let" constructs (as in "let x=... in (expression)") or through function calls.

      Since iteration tends to be though of as inherently stateful, functional programming tends to lack it -- everything is done using recursion.

      So if you use C without using assignment or loops, you can write C in a functional style. An example might be:

      int strcmp(char *a, char *b)
      /* returns 0 if string a is lexigraphically greater
      * than b
      */
      {
      if ((*a == 0) && (*b == 0)) return 0;
      else return *a - *b || strcmp(a+1,b+1);
      }

      Since this is unnatural for C, functional programming languages have been written to support the programming paradigm. Examples include ML, Haskel, and Lisp. Purists can argue about how functional they are, but compared to C, they are.

      Functional programming languages tend to be rich in the ability to arbitrarily construct complex types as needed, and treat functions as first-class objects (you can create them on the fly, pass them as arguments, put them in lists, tuples, records, or other structured types).

      This freedom to use functions leads to some very different programming techniques. For instance, one common construct is called a "curry" (after the mathematician who described it), which converts a function of N variables into a function of N-1 variables. For instance, if f(x,y) is a function, and g=curry(f,Y), then g(x)=g(x,Y)). One way of thinking of this is that if you think of f as a two-dimensional array, then curry(f,Y) is a one-dimensional slice of the array.

      Or, you could do something like this:

      (define (addXto x) (curry add x)) ==> addXto
      (define g (addXto 5)) ==> g
      (g 4) ==> 9
      (g 45) ==> 50

      These examples of currying are simple, but it can be a powerful technique.

    5. Re:functional langauge by amonymous · · Score: 1

      (FOO = "bar"; g(x) { f(x, FOO) };

      This does not work at all when you want
      a function to return a partially applied
      function.

      The problem with your "encoding" is that it
      is possible to create only a fixed (at compile
      time) number of partial applications. Whereas
      you may want to partially apply g to an unbound
      number of values.

      But functionnal languages *can* be encoded in
      "non-functionnal" ones. You just have a
      hard time handling environments by yourself
      when you do so.

    6. Re:functional langauge by mike_the_kid · · Score: 1

      Well someone has to answer this, right?
      Functional languages have an advantage in correctness: Its my experience that they're easier to prove correct. I don't know if a haskell algorithm is faster than the c++ one, its probably all in the compiler, and most of the ML compilers I've worked with seem quite a bit younger than c compilers, so they probably haven't been tweeked as much, and consequently, they're not necessarily faster. (But if you think speed is everything, than you're missing the point, I guess)...
      I think the reason they're in the contest is because its sponsored by a functional programming group (ICFP).
      I don't imagine there's much difference in speed in a good tail recursive function versus iterative.
      Someone told me (right before I took a class in ML) that if your ML program compiled, and you knew a little of what you were doing, it was going to be right. Forget all the bug testing and memory leaks, not an issue. Well, I failed that class... but anyway, I still like functional programming, and recursion and induction seem pretty cool.

      --
      Troll Like a Champion Today
  24. Re:"Performance *may* matter." (in the judging!) by Paul+Crowley · · Score: 1

    Performance was central to last year's contest, for writing a game-playing algorithm. Read the writeups of last year's: the winning team had to do a great deal of damn clever stuff to get that first place. They called on a lot of resources that it would be hard to beat them without.
    --

  25. Perl won't win for performance reasons. by Paul+Crowley · · Score: 1

    Perl won't win because I'd guess performance will almost certainly be important, and while Perl is easily fast enough for a variety of real-world tasks (where networks and disks become the bottleneck above a particular performance anyway) it's not designed to win contests like this, where the winning entry will almost certainly be CPU-bound in some central computing core.
    --

  26. Does anyone know... by stevef · · Score: 1

    ...what last year's problem was? Just curious as to what to expect.

    Steve

    1. Re:Does anyone know... by Ross+C.+Brackett · · Score: 1

      You can read about the solutions to last year's problem here:
      http://www.ai.mit.edu/extra/icfp-contest/

  27. Great story by tilly · · Score: 1

    Need to re-read/A> it?

    :-)

    Cheers,
    Ben

    --
    My usual seat in the cluetrain is at A HREF="http://pub4.ezboard.com/biwethey.ht
  28. Re:stupid hemos on late announcement by DrGoon · · Score: 1

    Perl won't win unless somebody does something very elegant using it, and I'd be surprised if a more elegant solution did not come from a team using something more appropriate. Style counts in this contest. However, as last year proves, if performance and experience of the task are significant factors, functional languages aren't guaranteed a win either.

    BTW, why use an "Anonymous Coward" post and then include your URL? I took a quick look, and you've got a very nice web site. Anybody interested in computational mathematics should have a gander.

  29. Re:Poor Students by ph43drus · · Score: 1

    Don't feel at a disadvantage.. just because some one is in college doesn't necessarily mean they can code better than you.

    If you think you are at a disadvantage, well then, you are, if only because you think you are.

    Personnally, I'm going to give it my damndest. I don't know what language I'm going to use yet though.

  30. Perl banned by platinum · · Score: 1

    Does anyone remember the programming contest sponsored by some west-coast university that banned Perl? Apparently, using Perl, a student completely thrashed the competition; therefore, Perl is now a no-no.

  31. Re:"Performance *may* matter." (in the judging!) by DragonHawk · · Score: 1

    Yes, there is more to good programming than performance. However, this is a *contest*. It does not reflect practical job skill. It simply challenges you to solve an arbitrary problem. If you wish to avoid that, do not enter. :-)

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  32. Re:stupid hemos on late announcement by DragonHawk · · Score: 1

    If you were this abusive then, I do not doubt in the least that he skipped right over your mail.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  33. Re:speed or size or what? by DragonHawk · · Score: 1
    Perl has a number of strengths:

    Perl is very dynamic, in terms of runtime data storage, execution, etc. Thus, it does well at things that change frequently or are largely undefined at design time.

    It makes text/string manipulation very easy. A good deal of what computers do is string processing of some kind.

    It uses C-like syntax, and C is very familar to a lot of people already.

    It integrates with the POSIX (UNIX) environment very well. Perl is ideal for "gluing" separate, unrelated tools together.

    Perl is extremely portable. If you are looking to implement something that will run on as many platforms as possible, Perl is a good choice.

    There are a lot of already-written Perl "modules" which are freely available. It is often easier to piece together several Perl modules then to solve a problem from scratch. In particular, there are a lot of web- and database-related modules.

    Perl is faster then most interpreted langauges, and there are a number of optimizations which can make it even faster for specific cases (caching compiled Perl scripts in the Apache web server being the popular one).

    This is not to say Perl is the perfect language. Far from it. The lack of imposed structure and data types is not always a Good Thing. Like anything else, you need to evaluate the available tools, and choose the best one for the task at hand.

    As far as learning it does, I think a lot of that is the way it is taught. A lot of books ("Programming Perl" especially) introduce a lot of the Perl "tricks" right away. These "tricks" are useful in contests, one-liners, and write-only code, but for professional projects, they are to be avoided. Again, the lack of imposed structure is not always a Good Thing. :-)

    All IMHO, YMMV, etc. :-)

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  34. Obfuscated Scheme by double_h · · Score: 1
    what do I know, I'm still in love with scheme ;)

    Okay, I have to ask, and this isn't a flame, but what do people see in Scheme? Perl was a little obtuse initially, but not a difficult language to learn. Scheme just makes my brain hurt -- the syntax is ++ugly and I just can't seem to wrap my head around it.

    1. Re:Obfuscated Scheme by particle77 · · Score: 1

      Scheme does take longer to get used to then some languages, but somebody forced me to use it until it warped my mind. Now I think in scheme and love it. I guess my to favourite aspects of scheme are the ease with which I can write very short recursive algorithms in it, and the ability to write functions that return completely new functions.

      -Jon Schaab

  35. Multiple CPUs by laktar · · Score: 1

    I wonder if this year's contest will be on another 4 processor machine. I think something like that makes it a bit unfair to those of us running little budget Linux boxes. I've never programmed for such a beautiful set of hardware and even if I learned something like Cilk (which looks rather nice and simple), I'd have to find somebody w/ a bigassed powerful machine to test any of the code on. I suppose it's time to recruit from PLUG (Philadelphia Linux User's Group).

    hmmm, I wonder if a team of 50 would be too big to effectively manage...

  36. Re:Poor Students by noom · · Score: 1



    When you do head of to school, you'll probably end up taking a class using a book called "Introduction to Algorithms" written by Cormen, Leiserson an Rivest. Just so you understand where I'm going, Leiserson was on the team ("Cilk Pousse") that won the contest last year.

    I'd say that you're not the only one with a disadvantage :).


    -NooM

  37. Re:Language statistics by noom · · Score: 1

    Re: only allow functional languages.

    It's probably still better this way since it gives a good idea of where optimizing functional compilers stand against "the competition." Although the Cilk team one, that second place spot held by a team which used OCaml is a pretty strong statement for the progress of recent compilers for functional languages.

    If other languages were not allowed, someone could easily say "well, I could have written something far better in C." Considering that an OCaml entry beat out all entries written in "pure C", and was only second to a multithreaded version of the language, the outcome is more relevant.

    -NooM

  38. Re:speed or size or what? by Progman · · Score: 1

    Isn't PERL the Practical Extraction and Report Language?
    Yes... it's also the Pathologically Eclectic Rubbish Lister, now you know why SlashDot is written in Perl :-)


  39. Re:speed or size or what? by particle77 · · Score: 1

    My own experience with perl is that it is one of the least restrictive languages I know of. This means that its easy to throw something togethor fast, but I avoid it like the plague simply because my code always looks like it was run over by a lawnmower when I'm through with it. But then what do I know, I'm still in love with scheme ;).

    -Jon Schaab

  40. Re:pre-written code? by EvilKevin · · Score: 1

    I don't believe that any of last year's entries were straight out pre-written. Even the guys who had code written to play games like chess had to make non-trivial changes to get their programs to play Pousse well enough to be competitive.

    For this year's contest, we have again tried our best to come up with a problem that won't give some teams a competitive advantage over others.

    Hopefully everyone will be equally challenged :)

  41. Poor Students by bigseanr · · Score: 1

    I just hope they can seperate student submissions some how. I feel at a big disadvantage having not gone to college yet and taking Comp Sci classes.

    1. Re:Poor Students by SEWilco · · Score: 2

      You can have skill and abilities without a degree. Or with one. All the entries should be in a single competition, as they were last year.

  42. Contest... by tchort · · Score: 1

    This is a really cool idea.. i didnt know of the competition last year (had i, i would have registered then too :) )
    i look forward to getting totally thromped at the hands of some actually competant coders, but eh, whachagonnado
    tchort

  43. Embarrasing Code by Foogle · · Score: 1

    Am I the only programmer out there who is secretly embarassed by each and every line he writes? -----

  44. basic by LordXarph · · Score: 1

    wonder how long a basic program would last? I'm betting that such an entry (I'm halfway considering entering one) would be instantly disqualified just on general principle =)

    -Lx?

    1. Re:basic by SamIIs · · Score: 1

      wonder how long a basic program would last?

      I was expecting to use punched cards. What is this new-fangled "basic" of which you speak?

  45. coolness by RoLlEr_CoAsTeR · · Score: 1

    This is one of the better contests that I have seen. It not only awards for correctness, but creativity.
    Indeed... I agree. If only I could program, heck, I'd enter the thing!

    All I can say is, "Carry on! Carry on!"

    --

    Insert mind here.
  46. Language statistics by the_dk · · Score: 1

    taken from the page about last year's competition:

    >Here are some broad statistics for the primary language used by the various teams:
    > 24 C dialects: C, C++, Cilk
    > 12 ML variants (SML/NJ, Moscow ML, OCaml, >OLabel)
    > 3 Scheme
    > 3 Haskell
    > 3 Perl
    > 1 J
    > 1 Mercury
    > 1 Icon

    looks like there was barely enough perl representation to give it a good chance. but doesnt that also say something about it? perl really isnt designed for tasks like this.

    im sure ill be using c, but if i get to the last 2 hours and dont have anythign to submit yet, then ill just write a simple little perl script to get the job done.

    also, apparently there were only 48 entries last year. maybe getting some exposure here on /. will up that number this year.

    1. Re:Language statistics by wyndfox · · Score: 1

      what on earth is haskell? url's, please?

      --
      "some people have too much freedom" - george dubya bush, facist, err republican presidential hopeful and domain name squ
  47. Re:speed or size or what? by Hard_Code · · Score: 1

    Isn't PERL the Practical Extraction and Report Language?

    I'd imagine it's good for exactly what it is used for...text manipulation, database/network interaction, data extraction, etc.

    --

    It's 10 PM. Do you know if you're un-American?
  48. This is nice by Beached · · Score: 1

    This is one of the better contests that I have seen. It not only awards for correctness, but creativity. If you get into a small team with some creative peolple you could win and not even be the fastest. Also, contests like this help promote CS amoung peolple who normally do not think of themselves as programmers.

    --
    ---- aut viam inveniam aut faciam
  49. speed or size or what? by wyndfox · · Score: 1

    there are a lot of ways to optimize a program...
    are they going for speed? size?

    if they are going for speed, it is certain that
    perl wont win- its interpreted fergodsake...
    or for size...

    so why do people use perl anyway?
    its certainly not an EASY language
    to learn...

    so all you perl fanatics, whats it good
    for?

    --
    "some people have too much freedom" - george dubya bush, facist, err republican presidential hopeful and domain name squ
  50. javascript by moonPolysoft · · Score: 1

    javascript sounds like a great language with which to submit a gag program. Put it in a little webpage and everything.

    --
    "There is nothing more intimidating than an idiotic smile worn by a manifest non-idiot." --unknown
  51. Re:pre-written code? by Trepidity · · Score: 2

    So you mean nobody, prior to this contest, had implemented a program to play Pousse? I suppose it's an obscure enough game that it would be possible, I just would've expected nearly every game to have a least some sort of program playing it by now...

    However, it seems the contest ran quite well, so I'll stop complaining =) Good luck on this year's.

  52. pre-written code? by Trepidity · · Score: 2

    I have a strange feeling that there will be somebody out there that has some pre-written code for whatever the challenge will be, that will only need slight modification. For example, last year's contest was playing pousse, and I'd be surprised if no pousse implementations had ever been written before. That'd leave the rest of us at a slight disadvantage.

  53. Re:"Performance *may* matter." (in the judging!) by SEWilco · · Score: 2

    Last year a program had to respond within 30 seconds. If your algorithm is fast enough to respond easily within a time limit then performance is not much of an issue. Performance does matter if you and your program have to make an effort to respond within the time limit.

  54. "Performance *may* matter." (in the judging!) by Sun+Tzu · · Score: 2

    Hmmm... I don't like the sound of that.