2500336110

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>

Zdzisław Spławski


Programowanie funkcyjne



Wyszukiwarka

Podobne podstrony:
Wykład 5Listy leniwe Listy leniwe Funkcjonały dla list leniwych Przykład: generowanie liczb pierwszy
Funkcjonały dla list leniwych — Imap Dla list leniwych można zdefiniować funkcjonały podobne do tych
Zdję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 w
procesy stochastyczne stacjonarne Procesy stochastyczne stacjonarne, dla których funkcja korelacji w
socjologia (12) głową może odgrywać dwie funkcje z jednej strony jest swego rodzaju wzmocnieniem i s
df5 Rozdział 4 Zadanie 5 Obliczyć pochodne do rzędu n dla funkcji: (pochodna 2 rzędu jest to pochodn
procesy stochastyczne stacjonarne Procesy stochastyczne stacjonarne, dla których funkcja korelacji w
stoch stacj korel wzajemna zero Procesy stochastyczne stacjonarne, dla których funkcja korelacji wza

więcej podobnych podstron