[Moscow.pm] map vs foreach

Andrey Kovbovich akovbovich на gmail.com
Ср Дек 2 08:31:14 PST 2015


2 декабря 2015 г., 15:28 пользователь Гришаев Анатолий <agrishaev на gmail.com>
написал:

> А как бегущую сумму считать без map? for тут явно избыточен.
>

Кое-где для этого используют ф-цию scanl (
https://mail.haskell.org/pipermail/haskell-cafe/2004-July/006361.html)

вот так как-то:

sub scanl {    my($f, $y, @lst) = @_;    @lst ? ($y, scanl($f,
$f->($y, shift(@lst)), @lst)) : ($y);}sub scanl1(&@) {    my($f, @lst)
= @_;    @lst ? scanl($f, shift(@lst), @lst) : ();}my @seq =
(1..10);my @rt = scanl1 {    $_[0] + $_[1]} @seq;use DDP; p @rt;
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20151202/642c150f/attachment.html>


Подробная информация о списке рассылки Moscow-pm