in reply to Sort options

Clearly, the & (bitwise-and operator; did you mean &&, the logical and operator?) won't work. The logical || operator won't perform the second test unless both strings ($a and $b) on the left side of the or are identical, which is not the case for data[1] and data[10]. On the right side, regex are (at least potentially) expensive; you would probably want to avoid their use in the sort; for this see How do I do a complex sort on an array?. For sorting small arrays, using merlyn's Schwartzian Transform won't make a noticeable difference in performance (of course, my definition of "small" would be that using the Schwartzian Transform doesn't make a noticeable difference), but my experience is that anything being sorted is likely to grow past "small" as soon as a program is in the hands of its ultimate users.

It's also possible that you would be better off using a different structure (HoA?) to store your data, but that may be only because I happen to have a morbid fascination with HoA's and HoH's, probably because my programming origins are in a language where the only data structures were arrays of various ranks.


Information about American English usage here and here. Floating point issues? Please read this before posting. — emc