Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Eily's scratchpad

by Eily (Prior)
on Jun 17, 2013 at 17:59 UTC ( #1039429=scratchpad: print w/replies, xml ) Need Help??

use v5.14; #my $fact = sub { (sub { goto &{$_[0]} })->(sub { $_[1] ? $_[1] * $_[0 +]($_[0], $_[1]-1) : 1 }, $_[0]) }; #my $fact = sub { (sub { $_[0]($_[0], $_[1]) })->(sub { $_[1] ? $_[1] +* $_[0]($_[0], $_[1]-1) : 1 }, $_[0]) }; my $auto_fact = sub { my ($self, $value) = @_; return 1 unless $value > 1; return $value * $self->($self, $value - 1); }; my $auto_fib = sub { my ($self, $rank) = @_; return 1 unless $rank > 1; return $self->($self, $rank - 1) + $self->($self, $ra +nk - 2); }; say "Test auto fact: $_!=", $auto_fact->($auto_fact, $_) for 5, 6, 10; say "Test auto fib: ", join ", ", map { $auto_fib->($auto_fib, $_) } 0 +..10; my $transformator = sub { my ($auto_fun,) = @_; return sub { $auto_fun->($auto_fun, @_) } }; *fib = $transformator->($auto_fib); say "Test fib: ", join ", ", map fib($_), 0..10; *fact = (sub { my ($auto_fun,) = @_; sub { $auto_fun->($auto_fun, @_) +} })->( sub { my ($self, $value) = @_; $value ? $value * $self->($sel +f, $value - 1) : 1 } ); say "Test fact: $_!=", fact($_) for 3, 4, 5;
Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (4)
As of 2018-05-27 01:58 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?