Greets, There are three class naming changes that I would like to make.
Now is the best time to make these mods. KinoSearch users who switch to Lucy once we release 0.1.0-incubating will have to mod their code anyway due to the namespace migration, so there will be no additional impact on them (especially if we supply a ks2lucy tool). Additionally, JIRA is clean right now -- we don't have a backlog of patch files which would be invalidated. Lastly, these changes are all straightforward enough or obscure enough that there will be minimal impact on the collective memory of the Lucy hivemind. The first change is to move LucyX::Simple to Lucy::Simple. I've become convinced that if we don't provide a class named Lucy::Simple, sooner or later somebody else is going to write and release one, creating confusion with LucyX::Simple. I think we should just lay claim to that namespace; we use it in the first chapter of the tutorial, so it's fairly important. The second change is to rename Lucy::Search::Compiler to Lucy::Search::Investigation, "A Query applied to a specific collection of documents." With this change, each Query-Compiler-Matcher trio will become a Query-Investigation-Matcher trio instead. I know that Nate would prefer to eliminate the middle stage entirely, creating Query-Matcher pairs. The name change to Investigation is not meant to prejudice the decision to zap or not to zap, which is too involved to tackle prior to the 0.1.0-incubating release. The last change is to rename some XXXXXScorer classes to XXXXXMatcher, e.g. ANDScorer -> ANDMatcher. Nearly all of these classes are private. Their names should have been changed some time ago when we eliminated Scorer in favor of Matcher. Better late than never. Marvin Humphrey
