let rec list_between from too =
  if from == too then []
  else match from with
    [] -> failwith "list_between: target not found"
  | hd::tl -> hd::list_between tl too