in reply to Golf: Arbitrary Alphabetical Sorting
Taking a few tricks from tilly, and influences from
merlyn, this one appears to be 74 characters:
Update:
I forgot to include the "\Q" and "\E" escapes to prevent it from going south if the "alphabet" contained characters such as '/' or '\n'. 4 character penalty.
Update 2:
If you want to cheat, you can always insert the literal character ASCII 255 into the string instead of the comparatively verbose '\377', which saves 3 characters, yielding a length of 71, though some editors show that single "character" as 2 on screen.
This will only work on single character 'alphabets', or those that y// can handle as UNICODE.sub o { ($c,*w,$")=@_;sub t{eval"y/\Q@$c\E/\0-\377/";$_}sort{t($_=$a)cmp t$_=$ +b}@w }
Update:
I forgot to include the "\Q" and "\E" escapes to prevent it from going south if the "alphabet" contained characters such as '/' or '\n'. 4 character penalty.
Update 2:
If you want to cheat, you can always insert the literal character ASCII 255 into the string instead of the comparatively verbose '\377', which saves 3 characters, yielding a length of 71, though some editors show that single "character" as 2 on screen.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re (tilly) 2: Golf: Arbitrary Alphabetical Sorting
by tilly (Archbishop) on May 10, 2001 at 12:02 UTC |
In Section
Meditations