Also about what to optimise for(size or speed). Should the routine be abe to handle an array greater than 256 bytes? Any value in the array or just a limited spectrum?
This doesn't sound much like a competition right now, you better set some more rules to define _one_ winner. Figure out and post a weighing system for size/performance and try out the sorter on a set of generated arrays only revealed when the deadline is passed. Some sorters work better on some data (say halfsorted or near totally reversed order etc). Any length, does that mean max 16-bits offset?
I just think competitions should be a bit more strict and follow certain rules that are unquestionable and there should only be one winner. Otherwise, where's the glory of winning?
coelurus is right, there should be rules that will enable a clear winner to be found.
I think it should just be something like a pointer to the array is passed in hl and the routine should sort it and return. No extra args passed, no ability to know before-hand the contents of the array.
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."
Unless there is a prize I don't think better rules are really needed. So what if there are multiple winners, just hand out more congrats.
The problem here is it's hard to judge in speed, because the data affects the speed in most cases. If this were a sprite rouitine or an aligned mapper where the data has little affect on the perfomance speed may be a more viable judgeing criteria.
There's a very simple solution to that: fixed test cases. Like we do for the declarative programming course: homeworks are submitted to an online tutoring system that runs them through some tests and sends back execution time. After the deadline all programs are evaluated on a different test set, so people won't 'optimise' for the submission cases (like hardcoding the results and spitting them out immediately).
I seem to recall sigma having done that. But it isn't a particularly hard programming problem, so there must be lots of implementations floating around.
Weighing: announce a speed winner and a size winner. It would be rather hard to beat you in the latter category.