let main () : unit Deferred.t =
let card = {
suit = Spades;
rank = Ace;
} in
(* card -> string *)
let s = Sexp.to_string (sexp_of_card card) in
print_endline s;
(* card -> string -> card *)
let card' = card_of_sexp (Sexp.of_string s) in
print_endline (Sexp.to_string (sexp_of_card card'));
return ()