Much more robust parsing (and more maintainable newparser.py code)
Many improvements to generation
Improvements to inference.py for better semantics
Indexed.py refactored somewhat and experimental use of indexed files instead of shelves (performance suffers however)
I've released updated (matches today's CVS) versions of indexed.py, newparser.py, and spell.py so it's not necessary to download the entire .zip or .tgz just to get the updated components.
Last version before 2002.
Here are some things that are working now:
>what is a wombat?
..a kind of animal.
>is it a marsupial?
..yes, a wombat is a marsupial.
>does it have legs?
..yes, a wombat has legs.
>how many legs does it have?
..a wombat has 4 legs.
>how many hairs does a beaver have?
..a beaver has lots of hairs.
>what color is a blue truck?
..blue.
>what is a gimlet?
..an alcoholic beverage.
>what is a herpetologist?
..a kind of scientist that studies reptiles.
>what is a glimpse?
..a quick look.
>what does 'embrace' mean?
..totally accept.
>what does 'belabor' mean?
..excessively stress.
>what is a whit?
..a shred.
>what is a shred?
..a small amount.
>tell me what a nightmare is.
..a frightening dream.
>what is affirmative?
..agreeable.
>can an ostrich fly?
..No.
>can a bird fly?
..yes, a bird flies.
>can a penguin fly?
..No.
>is a penguin a bird?
..yes, a penguin is a bird.
>is a wombat a mammal?
..yes, a wombat is a mammal.
>is a penguin a mammal?
..No.
>what is a penguin?
..a kind of bird.
pytalk.py is now a somewhat useful replacement for template.py It can be used to query the information in the frames database by asking natural language questions. Any constructions which aren't handled echo back a (roughly) equivalent sentence. This is in order to continue testing generation.
Pytalk.py is getting close to replacing template.py as a chatbot with this version. I'm estimating it may be a true replacement within a month (for sufficiently large values of month).
This version is to fix problems when using gdb for shelves.
This version incorporates all changes to date in CVS. CVS updates may be more infrequent from here on, but releases may be more frequent.
This is the final (fixed) version of 0.10. The setup has been simplified and some bugs were fixed.
I made some of the independently useful parts available for download. I hope to create the full packages soon.