!7 standardBot1 DiscordToPhilosophyBot { new SimpleFactStore factStore; transient S theory = [[ import math theory validity { // a human weighs between 80 and 400 pounds $x is a human & $x weighs ($y pounds) => $y >= 80 & $y <= 400 contradiction => say (That can't be right) } theory (weight change) { $x weighs ($y pounds) & last time $x weighed ($z pounds) => proc { if ($y < $z): say (You lost weight) else if ($y > $z): say (You gained weight) else: say (You are stagnant) } } theory (remember last weight) { $x weighs ($y pounds) => proc { unless contradiction: delete all (last time $x weighed ($z pounds)) store (last time $x weighed ($y pounds)) } } theory (interpret input) { $x says (i weigh $y pounds) => $x weighs ($y pounds) $x says (my weight is $y pounds) => $x weighs ($y pounds) } ]]; sync S processSimplifiedLine(S s, O... _) { try answer super.processSimplifiedLine(s, _); try answer factStore_cmds(factStore, s, authed(_)); ret philosophyBotWithFactStore_discordAnswer(theory, factStore, s, _); } }