cat.ml
let echo chan = try while true do print_string (input_line chan); print_newline() done with End_of_file -> ();; if Array.length Sys.argv <= 1 then echo stdin else for i = 1 to Array.length Sys.argv - 1 do let chan = open_in Sys.argv.(i) in echo chan; close_in chan done;;