struct

  type t = {
    name: string;
    prior_probability: float;
    theta: float
  }

  let to_json {name; prior_probability; theta}: Yojson.Basic.json =
    `Assoc [
      "name"`String name;
      "prior_probability"`Float prior_probability;
      "theta"`Float theta;
    ]
  let name {name; _} = name

  let render {name; prior_probability; theta}  =
    ["-s"Float.to_string prior_probability;
     "-T"Float.to_string theta]

  let default = {
    name = "default";
    prior_probability = default_prior_probability;
    theta = default_theta;
  }

end