That's very informative, thank you.
Hmm, on second thought, a graphical interface for 0D system is probably crucial. I realized as I kept planning on the 0D Phase 1. Hmm...
Well, for appropriate design, I mentioned from my previous mocking thread that my AI is based on mesh system with a bit of hierarchical composition-- somewhat similar to full brain simulation-- except mine is spatial. As you probably know that human brain is made up of different parts, and those parts each functioned differently. Thus my project requires a lot of Custom Classes, or Custom Structs (In C#, classes are reference types, and structs are value types). Each classes stores different things, and even different way.
Many or most data must not be duplicated. Since I need to make sure that the memory and the processing must be as optimized as it can be, so most larger data like neurons must be referenced. Our human brain revolves through plasticity. My model of AI follows that, of course. Thus, more neural connection is formed rather than new neurons -- that sort of thing.
So, yeah, data flowing through neurons. Lots and lots of neurons... Our brain is like a recorder, constantly recording every possible events, while forgetting. I'm not entirely convinced if C++ can handle that. I'm not much experienced in these IT fields, once again, wewewew. (Although my AI doesn't really need the entire brain to just say "hi". So, it doesn't effect much even if there's a million of synapses, for a reason.)
However, my project... Requires 2 AI to work at once -- sort of. So, two brains. Wewew.
I don't think anyone has ever thought of 2 AI at once before, have they? ...
I heard that C++ are prone to memory problems, like memory leaks? While C# has garbage collection -- but I am not sure. I have no idea how to work with C++ memory pointers and stuff, for sure. They've never cease to confuse me.
Edit: And I need fastest matching data-- dictionary and hash works. My AI does not involve sorting at all.
So, it's not just simply...
switch (input.ToUpper())
{
case "BLARGH": return "What?";
case "BLORGH": return "Stop it."
case "BLERGH": return "I said, stop it!"
case "BLURGH": return "One last time... Stop it."
case "BLIRGH": return "... ... ..."
case "BLYRGH": return "GOD DAMNIT YOU LITTLE! --"
}