Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Checking if one element is equal to any element in a list in OCaml?

Tags:

list

ocaml

So what I have this list of ints, let's say it is

let a = [14, 22, 47] in

And what I want to do is check if some other identifier is equal to ANY of the elements in the list. I could obviously do:

if (x = 14 || x = 22 || x = 47) then do something

but this seems cumbersome for bigger lists. Is there an easier way in OCaml? I know Python has the "in" operator.

like image 524
sebster Avatar asked Sep 13 '25 10:09

sebster


1 Answers

$ ocaml
        OCaml version 4.01.0

# List.mem;;
- : 'a -> 'a list -> bool = <fun>
# List.mem 3 [1;2;3];;
- : bool = true
# List.mem 8 [1;2;3];;
- : bool = false

(I'd suggest reading through the list of functions in the List module. You want to be familiar with all of them.)

like image 70
Jeffrey Scofield Avatar answered Sep 16 '25 11:09

Jeffrey Scofield