Blame


1 1ddd2d4e 2023-09-10 jrmu #!/usr/bin/perl
2 1ddd2d4e 2023-09-10 jrmu
3 1ddd2d4e 2023-09-10 jrmu # Using the glob operator, a naive sort of every name in your home directory
4 1ddd2d4e 2023-09-10 jrmu # by their relative sizes might be written as:
5 1ddd2d4e 2023-09-10 jrmu #
6 1ddd2d4e 2023-09-10 jrmu # chdir; # the default is our home directory;
7 1ddd2d4e 2023-09-10 jrmu # my @sorted = sort { -s $a <=> -s $b } glob '*';
8 1ddd2d4e 2023-09-10 jrmu #
9 1ddd2d4e 2023-09-10 jrmu # Rewrite this using the Schwartzian Transform technique.
10 1ddd2d4e 2023-09-10 jrmu
11 1ddd2d4e 2023-09-10 jrmu use v5.24;
12 1ddd2d4e 2023-09-10 jrmu use warnings;
13 1ddd2d4e 2023-09-10 jrmu use strict;
14 1ddd2d4e 2023-09-10 jrmu use utf8;
15 1ddd2d4e 2023-09-10 jrmu
16 1ddd2d4e 2023-09-10 jrmu chdir;
17 1ddd2d4e 2023-09-10 jrmu my @sorted = map { $_->[0] } sort { $a->[1] <=> $b->[1] } map { [$_, -s] } glob '*';
18 1ddd2d4e 2023-09-10 jrmu print join "\n", @sorted;