Re: [問題] return 一個function
(define t(lambda(f) (lambda (x) (f (f x)))))
(define s(lambda (x) (* x x)))
((t s)2)
my $t = sub {
my $f = shift;
sub {
my $x = shift;
$f->($f->($x));
}
};
my $s = sub {
my $x = shift;
$x*$x;
};
print $t->($s)->(2);
=================================
(define cplus(lambda (x) (lambda (y) (+ x y))))
((cplus 2)3)
my $cplus = sub {
my $x = shift;
sub {
my $y = shift;
$x+$y;
};
};
print $cplus->(2)->(3);
其實我不知道為何你第一個會寫,第二個卻寫不出來...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.185.230
※ 編輯: dryman 來自: 220.136.185.230 (01/03 22:34)
※ 編輯: dryman 來自: 220.136.185.230 (01/03 22:36)
推
01/04 00:23, , 1F
01/04 00:23, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章