Pervasives.flush chan;
)
+let memory_list () =
+ with_memory_locked (
+ fun fd ->
+ let chan = in_channel_of_descr fd in
+ let memory : (string, string) Hashtbl.t = input_value chan in
+ Hashtbl.fold (fun key value xs -> (key, value) :: xs) memory []
+ )
+
let published_goals = ref []
let publish name fn = published_goals := (name, fn) :: !published_goals
let get_goal name =