sbool myTruth_verbose, myTruth_persistent = true; svoid loadMyTruthFrom(S dbProgramID) { loadConceptsFrom(dbProgramID); loadMyTruth2(); } svoid loadMyTruth { if (myTruth_persistent) db(); loadMyTruth2(); } svoid loadMyTruth2 { tt(); set englishToConceptLanguage_hygienicParsing; for (MyTruth t) lispAddLocalTruth(t.globalID, t.term); } svoid myTruth(S bla) { Pair p = splitConceptsFromStatements(bla); myTruth(p.a, p.b); } svoid myTruth(S concepts, S statements) { useConceptsAndStatements(concepts, statements); loadMyTruth(); aiStandardHandlers(); printLispStatements(); } svoid fromUser(S head, O... args) { fromUser(lisp(head, args)); } svoid fromUser(Lisp l) { emit(l, "user"); } svoid emit(Lisp l) { emit(l, ""); } svoid emit(Lisp l, S madeByRule) { ThoughtSpace ts = thoughtSpace(); if (ts != null) { ts.addStatement(l); ret; } LispStatement s = lispAddLocalTruth(l); if (s != null) { new MyTruth(s.globalID, l, madeByRule); if (myTruth_verbose) print("emit> " + l); } } svoid unemit(Lisp l) { ThoughtSpace ts = thoughtSpace(); if (ts != null) { //print("Unemitting from " + ts.globalID + ": " + l); ts.removeStatement(l); ret; } LispStatement s = findLispStatement(l); if (s == null) ret; removeLispStatement(s); deleteConcepts(MyTruth, globalID := s.globalID); } svoid unemit(S statementID) { ThoughtSpace ts = thoughtSpace(); if (ts != null) { ts.removeStatement(statementID); ret; } LispStatement s = getLispStatement(statementID); if (s == null) ret; removeLispStatement(s); deleteConcepts(MyTruth, globalID := s.globalID); }