!7 static Web web; static Canvas canvas; svoid initWeb { web.node("Every day"); } p-subst { web = persistentObject("Web", Web); web.useCLParse = false; web.onNewLabel.add(voidfunc(WebNode node, O label) { processNode(node); change(); }); initWeb(); canvas = showCAL(webToCAL(web), 650, 450); calcOnConceptChanges(1000, r { canvas = showCAL(webToCAL(web), canvas) }, false); botWithCommandList("Every Day Bot."); } answer { if "every day *" { web.relation("Every day", "I should", $1); ret "OK"; } if "clear" { web.clear(); change(); initWeb(); ret "OK"; } if "add day *" { web.node($1).addLabel("Day"); ret "OK"; } if "process" { web_processAllNodes(web); ret "OK"; } } svoid processNode(WebNode node) { if (node.hasLabel("Day")) processDay(node); } svoid processDay(WebNode day) { web_copyForwardRelations(web, "Every day", day, "I should"); }