[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: summary of shootout results

> http://zooko.com/shootout-compress.html

I think that compressing source code as a way of measuring its complexity is
a great idea.

But how do you adjust for the presence of "unnecessary" information like
type annotations, which may be useful in ways other than communicating the
algorithm to the machine?  This relates somewhat to the "how much does it
confuse programmers" complexity mentioned on your page, although I think
there's a bit more to it than that.

The fact that SML/NJ is at the bottom of the list may imply that's it's one
of the best languages, from the point of view of containing meta-information
which helps in automated checking of correctness, documenting of
assumptions, etc.

To use the compression metric meaningfully, we'd need to come up with a way
of measuring the value and size of the non-algorithmic information content,
in order to be able to factor it out or take it into account in comparisons.