Functional Programming & Proofs
Trees and languages
- (
filter
)
How to select the element of a stream having a property p
?
let rec filter p s =
match s with
| End -> End
| Add (v,s1) -> if (p v) then Add (v,filter p s1) else filter p s1;;
filter ((>) 8) s;;
let str s = "[ "+(reduce "" (fun v s->(string v)+" "+s) s)+"]";;
str (filter ((>) 8) s);;
let (|>) x f = f x;;
s |> (filter ((>) 8)) |> str |> printfn "%s";;
8 - 10
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide
docteur dr laurent thiry uha mulhouse france functional programming fsharp proof theory coq coqide