Technical details

  • Translating to other languages Translating the application to other languages are basically 2 separate tasks: translating the interface and making certain that the bot knows everything it needs to know about the language (which type of verb conjugations there are & it also needs to...
  • Architectural overview of NND In this article I’d like to explain a little more about the structure of the neural network project as it relates to source code. Basically, it’s a description of the different libraries, what they are for, how everything relates to each other and some cr...
  • Objects and assets: abstract and concrete Today, I’d like to write a little bit about some of the internal data structures used by aici. More specifically, how it stores abstract and concrete knowledge or in other words, the structures used to make a difference between general understanding and c...
  • NNL language specification The EBNF specification for NNL
  • Instruction list Contains all the instructions currently available in NNL. (generated by the designer application)
  • Path bindings Path bindings are used in NNL to let the compiler know how it needs to handle paths that start with a ^, $, #, ~ or @. The compiler uses this information to convert these paths that can be defined in the code sections, output patterns and conditionals int...
read more