[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kinosearch
Subject:    [KinoSearch] remove Hits->seek() [patch]
From:       marvin () rectangular ! com (Marvin Humphrey)
Date:       2007-07-13 15:12:34
Message-ID: F3C47A2A-E2F0-428E-929E-778AEDE6DEAD () rectangular ! com
[Download RAW message or body]


On Jul 13, 2007, at 11:49 AM, Nathan Kurz wrote:

> if someone tries uses a
> search() offset and then resets the Hits offset to zero to start over,
> they won't be getting the same Hit they got the first time.

Not a problem.  Because there is no public API for resetting the  
offset, this is an implementation detail.  We can change the  
internals later if we decide to add that public functionality.

> What should I tackle next?

I've got a ToDo list on the wiki:

   http://www.rectangular.com/kinosearch/wiki/ToDoList

Pick whatever you'd like except for Windows compat, which I'm working  
on.

I'd guess that the task you'd enjoy most would be this one (: it's  
nice and "reductive" :)...

   Remove position-generating code in Scorer subclasses and Tally,
   now that the decision has been made not to implement the
   position-aware BooleanScorer in core.

To elaborate: we'll keep Tally as an extensible container for scoring  
information, but the core Scorer subclasses will only use it for  
score and num_matchers.

   * The ScoreProx class can be eliminated entirely.

   * TermScorer:
     o Eliminate the sprox member var.
     o Deal with the fallout of eliminating sprox in TermScorer's
       subclasses.

   * PhraseScorer:
     o Eliminate the sprox member var.
     o Kill off the static function build_prox().

   * ANDScorer:
     o Eliminate the vestigial raw_prox_bb member var.

   * Tally:
     o Eliminate the the sprox_cap, num_sproxen and sproxen member vars.
     o Eliminate the Tally_Add_Sprox and Tally_Zap_Sproxen methods.
     o Kill Tally_Destroy, since inheriting from Obj_Destroy is fine
       once we eliminate the sproxen member var.

That sounds like a lot, but it's not.  Basically, "svn remove"  
ScoreProx.h and ScoreProx.c, then keep deleting other stuff until the  
library compiles again, at which point I think all tests will pass.   
Lemme know if you get a successful compile and tests are still  
failing.  (Watch out for the Build.PL bug that Edward Betts just  
encountered -- use "./Build distclean" liberally.)

While you're deleting all that stuff, you might glance over it.   
It'll probably find its way back into position-aware scorers that  
either you write or I write.  (FYI, the "rich positions" stuff will  
still work, since it depends on the behavior of RichPosting, not  
ScoreProx and Tally.)

Marvin Humphrey
Rectangular Research
http://www.rectangular.com/



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic