cant find one so here is ...

let rec solve() = 
    match System.Console.ReadLine() with
    | "42" -> ()  
    | num -> System.Console.WriteLine(num); solve()
solve()

let solution2() = 
    seq {while true do yield System.Console.ReadLine()} 
    |> Seq.takeWhile (fun x -> not (x.Equals("42"))) 
    |> Seq.iter (fun x -> System.Console.WriteLine(x))
solution2()