Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (* times : int -> int -> int *)
- let times n = function m -> n * m
- (* sum : (int -> int) -> (int * int) -> int *)
- (* sum f (lower,upper) = (f lower) + (f (lower+1)) + .... + (f upper) *)
- let rec sum f = function
- (lower,upper) -> if lower > upper then 0
- else f lower + sum f (lower +1,upper)
- (* or *)
- let rec sum f (lower,upper) =
- if lower > upper then 0
- else f lower + sum f (lower +1,upper)
- (* sumbetween : int * int -> int *)
- (* sumbetween (n,m) = n + (n+1) + ... + m *)
- let rec sumbetween (n,m) =
- if n>m then 0 else n + sumbetween (n+1,m)
- (* sumbetw : int -> int -> int *)
- (* sumbetw n m = sumbetween (n,m) *)
- let rec sumbetw n m =
- if n>m then 0 else n + sumbetw (n+1) m
- (* comp : ('a -> 'b) -> ('c -> 'a) -> 'c -> 'b *)
- let comp f g = function x -> f (g x)
- (* or *)
- let comp f g x = f (g x)
Advertisement
Add Comment
Please, Sign In to add comment