Skip to content

Program Flow

Daniel edited this page Dec 31, 2018 · 3 revisions

** This is a brief description of Baby6.1 program flow.**

    • [main()]

      The entry point with a while()loop that watches for an end command that terminates the program.

    • [c_Brain.h::ProcessUserInput()]

      Receives user input from main() Runs a sub-process CheckForGreetings() to perform salutations if necessary Runs a copy of that data through c_Sentence.h::CommandCheckSentence.Parse() to execute possible commands at CommandTrap() Returns to main() if a command was found. If no command, the data is parsed in the normal c_Sentence.parse() class.

    • c_Brain.h::SetWordTypes() is called.

      This routines checks memory and tries to set the word types in c_Sentence.h::SetWordTypes() It also uses the c_Language.h class to get assistance with these words.

    • [c_Cerebellum.h::FindSubject()]

      This process looks at patterns and structures of the sentence to try and determine the subject matter.

    • [c_Language.h::PatternReview]

      Pattern review looks at the above created pattern and makes assumptions based on grammar rules and flow. The suggested new pattern is returned along with a confidence level.

    • [c_Cerebellum.h::FindSubject()]

      This process is called again to see if after pattern review, a better subject location has been found.

    • [c_Cortex.h::DecipherCurrentSentence()]

      This class now takes over the sentence interpretation. An Understanding Level is calculated based on the quantity of words vs the quantity of known word types. Multiple sub-processes are tasked with working on the sentence based on the understanding level.

    • [c_Brain.h::StoreNewWords]

      Memory is updated about the new words just learned. Subjected data has been updated along the way. User and/or program information has also been updated.

    • [main()]

      Control is returned here awaiting more user input.