I was looking at a article ... wanted make sure I was interpreting (pun intended) the mechanism correctly:
:) Consider interpreting the article instead , or one of these (: not sure if this was punny :)
:D
- Schwartzian Transform
- How do I sort an array by (anything)?
- Schwartzian Transform
- Schwartzian Transform
- Schwartzian Transform
- site:perlmonks.org Schwartzian Transform
- Guttman-Rosler Transforms
- Renaming the Schwartzian Transform
- Sorting dates with the Schwartzian Transform
- dominus Schwartzian transform
- Schwartzian transform
- The Perl Hardware Store - Tools You Didn't Know You Needed
- Sorting with the Schwartzian Transform (May 06)
Am I close to understanding it? Is the Schwartzian Transform *always* constructed in this manner?
Close, just need some Basic debugging checklist to cement your understanding
$ cd dominus-tmp
$ cat schwartz
#!/usr/bin/perl --
use strict;
use warnings;
use Data::Dump qw/ dd pp /;
my @sorted_names ;
opendir D, '.' or die $!;
@sorted_names =
map { [ $_, -M $_ ] }
readdir D;
dd \@sorted_names;
opendir D, '.' or die $!;
@sorted_names =
sort { $b->[1] <=> $a->[1] }
map { [ $_, -M $_ ] }
readdir D;
dd \@sorted_names;
opendir D, '.' or die $!;
@sorted_names =
map { $_->[0] }
sort { $b->[1] <=> $a->[1] }
map { [ $_, -M $_ ] }
readdir D;
dd \@sorted_names;
__END__
$ perl schwartz
[
[".", 0.00197916666666667],
["..", 0.00247685185185185],
["schwartz", 0.000289351851851852],
]
[
["..", 0.00247685185185185],
[".", 0.00197916666666667],
["schwartz", 0.000289351851851852],
]
["..", ".", "schwartz"]
The [ $_, -M $_ ] } part is known as [ $_, expensive_function( $_ ) ]
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.