%0 Table {ask.Relation Any Any;assert.Relation Any Any;delete.Relation Any;get.Relation Any Any;new.Relation Any;retract.Relation Any Any;set.Relation Any Any} % % module % 7 mutable_7(_s,_s2,_upvals):-_upvals=[],(assert_(_s,_s2)). % 6 mutable_6(_s,_s2,_upvals):-_upvals=[],(assert_get(_s,_s2)). % 5 mutable_5(_s,_s2,_upvals):-_upvals=[],(assert_(_s,_s2)). % 4 mutable_4(_s,_upvals):-_upvals=[],(atom_string(_o,_s),nb_delete(_o)). % 3 mutable_3(_s,_o2,_upvals):-_upvals=[],(atom_string(_o,_s),nb_setval(_o,_o2)). % 2 mutable_2(_s,_o,_upvals):-_upvals=[],(atom_string(_o_,_s),nb_getval(_o_,_o)). % new mutable_new(_t,_upvals):-_upvals=[],(true). % main mutable(X):-_new = clos([],mutable_new),new(T1),set_(T1,"new",_new,T3),set_(T3,"get",clos([],mutable_2),T4),set_(T4,"set",clos([],mutable_3),T5),set_(T5,"delete",clos([],mutable_4),T6),set_(T6,"assert",clos([],mutable_5),T7),set_(T7,"ask",clos([],mutable_6),T8),set_(T8,"retract",clos([],mutable_7),T2),_t = T2,X=_t.