in reply to Understanding the Schwartzian transform.
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
- Renaming 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)
- The Perl Hardware Store - Tools You Didn't Know You Needed
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( $_ ) ]
|
---|
In Section
Seekers of Perl Wisdom