85
« on: March 06, 2004, 02:20:11 am »
Hello!
THANK YOU, everyone, for the wonderful postings and the excellent contributions and interest! And, welcome new members!
Here are the main points I should have said about Hal's pronoun-reversals:
1. Before re-inventing the wheel or discarding the old one, examine the "substitutions.brn" and "corrections.brn" databases and understand their structure, content, and intent.
2. Hal's pronoun-reversals, imperfect though they may be, give Hal an advantage in the current market. The reason that so many other chatterbots DON'T have "real time learning" is because their authors haven't yet figured out, or bothered to construct, a decent pronoun-reversal routine. (Some have, and my hat is off to them!)
3. If we add, delete, or change a feature, we should include the following criteria to evaluate the change: a) does it work better, and b) does it avoid introducing new problems or errors?
4. The concept, structure, and intent of the existing substitutions.brn and corrections.brn databases include the idea of upgrading their content to improve Hal into the future.
By the way, I thought of a couple of other technical-history pronoun items that might be useful to share:
A. There was an early-legacy pronoun-reversal routine in the function that creates new database entries for the "specific recall" databases (the databases that have all the complex arguments). That early pronoun-reversal routine doesn't work reliably, but it's buried in a .dll or .exe file somewhere, and has never been removed. For that reason, if you examine the .uhp "control scripts," you will find some elaborate work-arounds designed to AVOID triggering that early-legacy behavior. (For example, pronouns get encoded and decoded at times, so that the function never "sees" a pronoun.)
B. The substitutions.brn and corrections.brn databases contain some word substitutions that are a matter of artistic choice. For instance, there's a special case for "tell you" (as noted above by Vonsmith) and a few other phrases that don't reverse well.
C. There are also a few (legacy) automatic word substitutions in the .exe or .dll files, beyond the reach of us script-writers. They don't come up very often, but they can cause vexing problems when trying to hunt-down the source of an inappropriate response.
Anyway, I'm delighted by the participation and contributions!
All I'm suggesting is before we start a major "re-wiring job," we give ourselves a fair chance to "study the schematic!"
Thank you so very much -- if I can answer more "legacy" questions, or if I can think of similar items, I'll contribute more to this thread.
Sincerely,
Don