method from_file file_name = 
    let channel = open_in file_name in
    let result = ((Marshal.from_channel channel) :> 'a) in
    close_in channel;
    result