module SomeLists type MyList = Empty | Cons of int * MyList let singleton = Cons(1, Empty) // 1 ∷ [] let binary = Cons(2, singleton) // 2 ∷ 1 ∷ [] let ternary = Cons(1,Cons(2,Cons(3,Empty))) // 1 ∷ 2 ∷ 3 ∷ [] printfn "A singleton list: %O" singleton printfn "A two-element list: %O" binary printfn "A three-element list: %O" ternary