Головна сторінка Груп Google
Довідка | Записатися
Допис з розмови Why my list function eats memory?
Група, до якої ви додаєте допис, - група Usenet. Відтак, будь-хто в Інтернеті бачитиме вашу електронну адресу.
Вашу відповідь не було надіслано.
Ваш допис було надіслано
 
Від:
Кому:
Копія:
Продолжить:
Додати копію: | Додати продовження: | Редагувати тему
Тема:
Підтвердження:
З метою підтвердження введіть символи, які ви бачите на зображенні нижче або числа, які чуєте, натиснувши значок доступу. Прослухайте і введіть цифри, що чуєте
 
Ertugrul Söylemez  
Переглянути профіль
 Більше налаштувань 28 Вер 2008, 16:05
Групи новин: comp.lang.haskell
Від: Ertugrul Söylemez <e...@ertes.de>
Дата: Sun, 28 Sep 2008 15:05:27 +0200
Локально: Нд 28 Вер 2008 16:05
Тема: Re: Why my list function eats memory?

Paul Graphov <grap...@gmail.com> wrote:
> Hello haskellers,

> I am writing a little program and I need a function that will convert
> a list of some values into the list of overlapping windows, for
> example, for window size 4:
> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,......] -> [[1, 2, 3, 4], [3, 4, 5, 6],
> [5, 6, 7, 8], [7, 8, 9, 10],......]

Your way of thinking is quite complicated.  Reconsider what you want.
You want a function, that continuously drops a certain number of
elements (in this case 2) from a list and gives an initial portion of
the remaining list.

  windows n d = map (take n) . takeWhile (not . null) . iterate (drop d)

All functions used here are suitable for infinite lists, so the
resulting composition is as well.

Greets,
Ertugrul.

--
nightmare = unsafePerformIO (getWrongWife >>= sex)


Ви мусите увійти перед публікацією повідомлень.
Аби надіслати допис, будь ласка, спочатку приєднайтеся до цієї групи.
Будь ласка, поновіть своє прізвисько на сторінці налаштування передплати перед тим, як надіслати свій допис.
У вас немає права надсилання дописів до цієї групи.

Створити групу - Групи Google - Домівка Google - Правила користування послугою - Заява про конфіденційність і нерозголошення інформації
©2009 Google