[Shootout-list] Stuff

Jon Harrop jon@ffconsultancy.com
Sat, 23 Apr 2005 03:25:16 +0100


On Saturday 23 April 2005 02:21, Robert Seeger wrote:
> > We need to ossify "a wide range of languages": My guess is that all
> > of my programs should be implementable in D, SML, C#, OCaml,
> > C++, Lisp, Java, Haskell, Lua, Scheme, Perl, Python and Felix.
> > Is that wide enough?
>
> That sounds reasonable to me... as long as you don't want your
> programs to be the Shootout...

This paragraph makes no sense to me. You seem to be saying that my tests are 
not suitable for the shootout (do you mean "to be _in_ the Shootout"?) but 
then you describe what you think is suitable for the shootout and my tests 
seem to fit the description perfectly.

Would you mind stating what specifically it is about my tests that you think 
makes them inappropriate for the shootout?

For example, here is a minimal core of the "nth" program in OCaml:

  let rec nth_nn n (i, io) = match n with
    0 -> singleton (i, io)
  | 1 -> fold (fun (j, jo) s -> add (j, add_i io jo) s) bonds.(i - 1) empty
  | n ->
      let pprev = nth_nn (n - 2) (i, io) in
      let prev = nth_nn (n - 1) (i, io) in
      let aux j t = union (nth_nn 1 j) t in
      diff (diff (fold aux prev empty) prev) pprev

> > For non-trivial tasks, it will be impractical to restrict
> > implementations to using identical data structures and algorithms.
>
> Such non-trivial problems don't belong in the Shootout, as far as I'm
> concerned.

I see no value in deleting tests from the shootout. I'd like to keep the 
pidigits test, for example. I'm up for superseding tests though, and I think 
some of the existing tests could be significantly improved upon.

> Personally, I'd like to see a test that deals with the 
> speed and ease of handling various Unicode encodings. As it turns out,
> the majority of languages can't handle such a test (without external
> libraries) and, as such, it's unlikely such a test will be added to
> the Shootout.

I would also like to see such a test in the shootout. I would like to know 
which languages can't handle Unicode.

> Having a wide variety of smaller
> tests, implemented in as wide a variety of languages as possible, is
> "A Good Thing", in my opinion.

If "smaller" means <100 LOC in at least 3 languages then I agree.

-- 
Dr Jon D Harrop, Flying Frog Consultancy Ltd.
Objective CAML for Scientists
http://www.ffconsultancy.com/products/ocaml_for_scientists