2500336110
Funkcjonały dla list leniwych - Ifilter, liter
Funkcja Ifilter wywoływana jest rekurencyjnie (rekursja ogonowa) tak długo, dopóki nie zostanie znaleziony element, spełniający podany predykat. Jeśli taki element nie istnieje, wartościowanie funkcji się nie skończy (dla nieskończonych list leniwych).
# let rec Ifilter pred = function LNil -> LNil
| LCons(x,xf) -> if pred x
then LCons(x, function () -> Ifilter pred (xf()) ) else Ifilter pred (xf())
val Ifilter : ('a -> bool) -> 'a llist -> 'a llist = <fun>
Funkcja lf romjest szczególnym przypadkiem funkcji liter, która generuje ciąg: [x, f (x), f (f (x)) , ... fk(x), ...] .
# let rec liter f x = LCons(x, function () -> liter f (f x));; val liter : ('a -> 'a) -> 'a -> 'a llist = <fun>
Programowanie funkcyjne
Wyszukiwarka
Podobne podstrony:
Wykład 5Listy leniwe Listy leniwe Funkcjonały dla list leniwych Przykład: generowanie liczb pierwszyFunkcjonały dla list leniwych — Imap Dla list leniwych można zdefiniować funkcjonały podobne do tychZdjęcie0136 (13) 5. Destruktor Przeciwieństwem konstruktora jest destruktor - funkcja składowa wywołFunkcjonały dla Ust leniwych — @@ Funkcja (@@) konkatenuje dwie listy leniwe (odpowiednik funkcji @procesy stochastyczne stacjonarne Procesy stochastyczne stacjonarne, dla których funkcja korelacji wprocesy stochastyczne stacjonarne Procesy stochastyczne stacjonarne, dla których funkcja korelacji wsocjologia (12) głową może odgrywać dwie funkcje z jednej strony jest swego rodzaju wzmocnieniem i sdf5 Rozdział 4 Zadanie 5 Obliczyć pochodne do rzędu n dla funkcji: (pochodna 2 rzędu jest to pochodnprocesy stochastyczne stacjonarne Procesy stochastyczne stacjonarne, dla których funkcja korelacji wstoch stacj korel wzajemna zero Procesy stochastyczne stacjonarne, dla których funkcja korelacji wzawięcej podobnych podstron